{
  "service": "square",
  "displayName": "Square",
  "categories": [
    "Finance",
    "Productivity"
  ],
  "authTypes": [
    "api_key"
  ],
  "auth": [
    {
      "type": "api_key",
      "label": "Access Token",
      "placeholder": "EAAA...",
      "description": "Square access token used with the Authorization: Bearer header. Create or view a personal access token in the Square Developer Console credentials page."
    }
  ],
  "homepageUrl": "https://squareup.com",
  "actions": [
    {
      "id": "square.create_customer",
      "service": "square",
      "name": "create_customer",
      "description": "Create a Square customer profile.",
      "requiredScopes": [],
      "providerPermissions": [],
      "inputSchema": {
        "type": "object",
        "properties": {
          "customer": {
            "type": "object",
            "properties": {
              "given_name": {
                "type": "string",
                "description": "The customer's given name."
              },
              "family_name": {
                "type": "string",
                "description": "The customer's family name."
              },
              "company_name": {
                "type": "string",
                "description": "The customer's company name."
              },
              "nickname": {
                "type": "string",
                "description": "The customer's nickname."
              },
              "email_address": {
                "type": "string",
                "description": "The customer's email address."
              },
              "address": {
                "type": "object",
                "properties": {
                  "address_line_1": {
                    "type": "string",
                    "description": "The first line of the address."
                  },
                  "address_line_2": {
                    "type": "string",
                    "description": "The second line of the address."
                  },
                  "address_line_3": {
                    "type": "string",
                    "description": "The third line of the address."
                  },
                  "locality": {
                    "type": "string",
                    "description": "The city or locality."
                  },
                  "sublocality": {
                    "type": "string",
                    "description": "The neighborhood or sublocality."
                  },
                  "administrative_district_level_1": {
                    "type": "string",
                    "description": "The first-level administrative district."
                  },
                  "postal_code": {
                    "type": "string",
                    "description": "The postal code."
                  },
                  "country": {
                    "type": "string",
                    "description": "The country code."
                  }
                },
                "additionalProperties": true,
                "description": "A Square address object."
              },
              "phone_number": {
                "type": "string",
                "description": "The customer's phone number."
              },
              "reference_id": {
                "type": "string",
                "description": "The merchant-defined customer reference ID."
              },
              "note": {
                "type": "string",
                "description": "The merchant-defined note for the customer."
              },
              "birthday": {
                "type": "string",
                "description": "The customer's birthday in Square format."
              },
              "tax_ids": {
                "type": "object",
                "properties": {
                  "eu_vat": {
                    "type": "string",
                    "description": "The customer's EU VAT ID."
                  }
                },
                "additionalProperties": true,
                "description": "Square customer tax IDs."
              },
              "version": {
                "type": "integer",
                "description": "The Square customer version for optimistic concurrency."
              }
            },
            "additionalProperties": true,
            "description": "Square customer fields to send in the request body.",
            "anyOf": [
              {
                "required": [
                  "given_name"
                ]
              },
              {
                "required": [
                  "family_name"
                ]
              },
              {
                "required": [
                  "company_name"
                ]
              },
              {
                "required": [
                  "email_address"
                ]
              },
              {
                "required": [
                  "phone_number"
                ]
              }
            ]
          },
          "idempotency_key": {
            "type": "string",
            "minLength": 1,
            "description": "A unique key that makes the Square write request idempotent."
          }
        },
        "additionalProperties": false,
        "required": [
          "customer"
        ],
        "description": "Request body for creating a Square customer."
      },
      "outputSchema": {
        "type": "object",
        "properties": {
          "customer": {
            "type": "object",
            "properties": {
              "id": {
                "type": "string",
                "description": "The Square customer ID."
              },
              "created_at": {
                "type": "string",
                "description": "The time when Square created the customer."
              },
              "updated_at": {
                "type": "string",
                "description": "The time when Square last updated the customer."
              },
              "cards": {
                "type": "array",
                "items": {
                  "type": "object",
                  "properties": {},
                  "additionalProperties": true,
                  "description": "A Square card object."
                },
                "description": "Cards associated with the customer."
              },
              "given_name": {
                "type": "string",
                "description": "The customer's given name."
              },
              "family_name": {
                "type": "string",
                "description": "The customer's family name."
              },
              "nickname": {
                "type": "string",
                "description": "The customer's nickname."
              },
              "company_name": {
                "type": "string",
                "description": "The customer's company name."
              },
              "email_address": {
                "type": "string",
                "description": "The customer's email address."
              },
              "address": {
                "type": "object",
                "properties": {
                  "address_line_1": {
                    "type": "string",
                    "description": "The first line of the address."
                  },
                  "address_line_2": {
                    "type": "string",
                    "description": "The second line of the address."
                  },
                  "address_line_3": {
                    "type": "string",
                    "description": "The third line of the address."
                  },
                  "locality": {
                    "type": "string",
                    "description": "The city or locality."
                  },
                  "sublocality": {
                    "type": "string",
                    "description": "The neighborhood or sublocality."
                  },
                  "administrative_district_level_1": {
                    "type": "string",
                    "description": "The first-level administrative district."
                  },
                  "postal_code": {
                    "type": "string",
                    "description": "The postal code."
                  },
                  "country": {
                    "type": "string",
                    "description": "The country code."
                  }
                },
                "additionalProperties": true,
                "description": "A Square address object."
              },
              "phone_number": {
                "type": "string",
                "description": "The customer's phone number."
              },
              "birthday": {
                "type": "string",
                "description": "The customer's birthday in Square format."
              },
              "reference_id": {
                "type": "string",
                "description": "The merchant-defined customer reference ID."
              },
              "note": {
                "type": "string",
                "description": "The merchant-defined note for the customer."
              },
              "preferences": {
                "type": "object",
                "properties": {
                  "email_unsubscribed": {
                    "type": "boolean",
                    "description": "Whether the customer is unsubscribed from marketing email."
                  }
                },
                "additionalProperties": true,
                "description": "Square customer preferences."
              },
              "creation_source": {
                "type": "string",
                "description": "The Square customer creation source."
              },
              "group_ids": {
                "type": "array",
                "items": {
                  "type": "string",
                  "description": "A Square customer group ID."
                },
                "description": "Customer group IDs returned by Square."
              },
              "segment_ids": {
                "type": "array",
                "items": {
                  "type": "string",
                  "description": "A Square customer segment ID."
                },
                "description": "Customer segment IDs returned by Square."
              },
              "tax_ids": {
                "type": "object",
                "properties": {
                  "eu_vat": {
                    "type": "string",
                    "description": "The customer's EU VAT ID."
                  }
                },
                "additionalProperties": true,
                "description": "Square customer tax IDs."
              },
              "version": {
                "type": "integer",
                "description": "The Square customer version for optimistic concurrency."
              }
            },
            "additionalProperties": true,
            "description": "A Square customer profile."
          }
        },
        "additionalProperties": false,
        "description": "Square customer response."
      }
    },
    {
      "id": "square.get_customer",
      "service": "square",
      "name": "get_customer",
      "description": "Retrieve one Square customer profile by ID.",
      "requiredScopes": [],
      "providerPermissions": [],
      "inputSchema": {
        "type": "object",
        "properties": {
          "customer_id": {
            "type": "string",
            "minLength": 1,
            "description": "The Square customer ID."
          }
        },
        "additionalProperties": false,
        "description": "Path parameters for retrieving a Square customer."
      },
      "outputSchema": {
        "type": "object",
        "properties": {
          "customer": {
            "type": "object",
            "properties": {
              "id": {
                "type": "string",
                "description": "The Square customer ID."
              },
              "created_at": {
                "type": "string",
                "description": "The time when Square created the customer."
              },
              "updated_at": {
                "type": "string",
                "description": "The time when Square last updated the customer."
              },
              "cards": {
                "type": "array",
                "items": {
                  "type": "object",
                  "properties": {},
                  "additionalProperties": true,
                  "description": "A Square card object."
                },
                "description": "Cards associated with the customer."
              },
              "given_name": {
                "type": "string",
                "description": "The customer's given name."
              },
              "family_name": {
                "type": "string",
                "description": "The customer's family name."
              },
              "nickname": {
                "type": "string",
                "description": "The customer's nickname."
              },
              "company_name": {
                "type": "string",
                "description": "The customer's company name."
              },
              "email_address": {
                "type": "string",
                "description": "The customer's email address."
              },
              "address": {
                "type": "object",
                "properties": {
                  "address_line_1": {
                    "type": "string",
                    "description": "The first line of the address."
                  },
                  "address_line_2": {
                    "type": "string",
                    "description": "The second line of the address."
                  },
                  "address_line_3": {
                    "type": "string",
                    "description": "The third line of the address."
                  },
                  "locality": {
                    "type": "string",
                    "description": "The city or locality."
                  },
                  "sublocality": {
                    "type": "string",
                    "description": "The neighborhood or sublocality."
                  },
                  "administrative_district_level_1": {
                    "type": "string",
                    "description": "The first-level administrative district."
                  },
                  "postal_code": {
                    "type": "string",
                    "description": "The postal code."
                  },
                  "country": {
                    "type": "string",
                    "description": "The country code."
                  }
                },
                "additionalProperties": true,
                "description": "A Square address object."
              },
              "phone_number": {
                "type": "string",
                "description": "The customer's phone number."
              },
              "birthday": {
                "type": "string",
                "description": "The customer's birthday in Square format."
              },
              "reference_id": {
                "type": "string",
                "description": "The merchant-defined customer reference ID."
              },
              "note": {
                "type": "string",
                "description": "The merchant-defined note for the customer."
              },
              "preferences": {
                "type": "object",
                "properties": {
                  "email_unsubscribed": {
                    "type": "boolean",
                    "description": "Whether the customer is unsubscribed from marketing email."
                  }
                },
                "additionalProperties": true,
                "description": "Square customer preferences."
              },
              "creation_source": {
                "type": "string",
                "description": "The Square customer creation source."
              },
              "group_ids": {
                "type": "array",
                "items": {
                  "type": "string",
                  "description": "A Square customer group ID."
                },
                "description": "Customer group IDs returned by Square."
              },
              "segment_ids": {
                "type": "array",
                "items": {
                  "type": "string",
                  "description": "A Square customer segment ID."
                },
                "description": "Customer segment IDs returned by Square."
              },
              "tax_ids": {
                "type": "object",
                "properties": {
                  "eu_vat": {
                    "type": "string",
                    "description": "The customer's EU VAT ID."
                  }
                },
                "additionalProperties": true,
                "description": "Square customer tax IDs."
              },
              "version": {
                "type": "integer",
                "description": "The Square customer version for optimistic concurrency."
              }
            },
            "additionalProperties": true,
            "description": "A Square customer profile."
          }
        },
        "additionalProperties": false,
        "description": "Square customer response."
      }
    },
    {
      "id": "square.list_customers",
      "service": "square",
      "name": "list_customers",
      "description": "List Square customer profiles with cursor pagination.",
      "requiredScopes": [],
      "providerPermissions": [],
      "inputSchema": {
        "type": "object",
        "properties": {
          "cursor": {
            "type": "string",
            "minLength": 1,
            "description": "Cursor token returned by a previous Square page."
          },
          "limit": {
            "type": "integer",
            "minimum": 1,
            "maximum": 100,
            "description": "Maximum number of records to return. Square allows 1 to 100."
          },
          "sort_field": {
            "type": "string",
            "enum": [
              "DEFAULT",
              "CREATED_AT"
            ],
            "description": "The Square customer list sort field."
          }
        },
        "additionalProperties": false,
        "description": "Query parameters for listing Square customers."
      },
      "outputSchema": {
        "type": "object",
        "properties": {
          "customers": {
            "type": "array",
            "items": {
              "type": "object",
              "properties": {
                "id": {
                  "type": "string",
                  "description": "The Square customer ID."
                },
                "created_at": {
                  "type": "string",
                  "description": "The time when Square created the customer."
                },
                "updated_at": {
                  "type": "string",
                  "description": "The time when Square last updated the customer."
                },
                "cards": {
                  "type": "array",
                  "items": {
                    "type": "object",
                    "properties": {},
                    "additionalProperties": true,
                    "description": "A Square card object."
                  },
                  "description": "Cards associated with the customer."
                },
                "given_name": {
                  "type": "string",
                  "description": "The customer's given name."
                },
                "family_name": {
                  "type": "string",
                  "description": "The customer's family name."
                },
                "nickname": {
                  "type": "string",
                  "description": "The customer's nickname."
                },
                "company_name": {
                  "type": "string",
                  "description": "The customer's company name."
                },
                "email_address": {
                  "type": "string",
                  "description": "The customer's email address."
                },
                "address": {
                  "type": "object",
                  "properties": {
                    "address_line_1": {
                      "type": "string",
                      "description": "The first line of the address."
                    },
                    "address_line_2": {
                      "type": "string",
                      "description": "The second line of the address."
                    },
                    "address_line_3": {
                      "type": "string",
                      "description": "The third line of the address."
                    },
                    "locality": {
                      "type": "string",
                      "description": "The city or locality."
                    },
                    "sublocality": {
                      "type": "string",
                      "description": "The neighborhood or sublocality."
                    },
                    "administrative_district_level_1": {
                      "type": "string",
                      "description": "The first-level administrative district."
                    },
                    "postal_code": {
                      "type": "string",
                      "description": "The postal code."
                    },
                    "country": {
                      "type": "string",
                      "description": "The country code."
                    }
                  },
                  "additionalProperties": true,
                  "description": "A Square address object."
                },
                "phone_number": {
                  "type": "string",
                  "description": "The customer's phone number."
                },
                "birthday": {
                  "type": "string",
                  "description": "The customer's birthday in Square format."
                },
                "reference_id": {
                  "type": "string",
                  "description": "The merchant-defined customer reference ID."
                },
                "note": {
                  "type": "string",
                  "description": "The merchant-defined note for the customer."
                },
                "preferences": {
                  "type": "object",
                  "properties": {
                    "email_unsubscribed": {
                      "type": "boolean",
                      "description": "Whether the customer is unsubscribed from marketing email."
                    }
                  },
                  "additionalProperties": true,
                  "description": "Square customer preferences."
                },
                "creation_source": {
                  "type": "string",
                  "description": "The Square customer creation source."
                },
                "group_ids": {
                  "type": "array",
                  "items": {
                    "type": "string",
                    "description": "A Square customer group ID."
                  },
                  "description": "Customer group IDs returned by Square."
                },
                "segment_ids": {
                  "type": "array",
                  "items": {
                    "type": "string",
                    "description": "A Square customer segment ID."
                  },
                  "description": "Customer segment IDs returned by Square."
                },
                "tax_ids": {
                  "type": "object",
                  "properties": {
                    "eu_vat": {
                      "type": "string",
                      "description": "The customer's EU VAT ID."
                    }
                  },
                  "additionalProperties": true,
                  "description": "Square customer tax IDs."
                },
                "version": {
                  "type": "integer",
                  "description": "The Square customer version for optimistic concurrency."
                }
              },
              "additionalProperties": true,
              "description": "A Square customer profile."
            },
            "description": "Customers returned by Square."
          },
          "cursor": {
            "anyOf": [
              {
                "type": "string",
                "description": "Cursor returned by Square, when another page is available."
              },
              {
                "type": "null"
              }
            ]
          },
          "nextCursor": {
            "anyOf": [
              {
                "type": "string",
                "description": "Cursor to pass into the next request, when one is available."
              },
              {
                "type": "null"
              }
            ]
          }
        },
        "additionalProperties": false,
        "description": "Paginated Square customers response."
      }
    },
    {
      "id": "square.list_locations",
      "service": "square",
      "name": "list_locations",
      "description": "List Square seller locations for the connected access token.",
      "requiredScopes": [],
      "providerPermissions": [],
      "inputSchema": {
        "type": "object",
        "properties": {},
        "additionalProperties": false,
        "description": "No input is required."
      },
      "outputSchema": {
        "type": "object",
        "properties": {
          "locations": {
            "type": "array",
            "items": {
              "type": "object",
              "properties": {},
              "additionalProperties": true,
              "description": "A Square location object."
            },
            "description": "Locations returned by Square."
          }
        },
        "additionalProperties": false,
        "description": "Square locations response."
      }
    },
    {
      "id": "square.search_customers",
      "service": "square",
      "name": "search_customers",
      "description": "Search Square customer profiles with supported Square filters.",
      "requiredScopes": [],
      "providerPermissions": [],
      "inputSchema": {
        "type": "object",
        "properties": {
          "query": {
            "type": "object",
            "properties": {
              "filter": {
                "type": "object",
                "properties": {},
                "additionalProperties": true,
                "description": "Square customer search filters."
              },
              "sort": {
                "type": "object",
                "properties": {},
                "additionalProperties": true,
                "description": "Square customer search sort options."
              }
            },
            "additionalProperties": true,
            "description": "Square customer search query."
          },
          "limit": {
            "type": "integer",
            "minimum": 1,
            "maximum": 100,
            "description": "Maximum number of records to return. Square allows 1 to 100."
          },
          "cursor": {
            "type": "string",
            "minLength": 1,
            "description": "Cursor token returned by a previous Square page."
          }
        },
        "additionalProperties": false,
        "description": "Request body for searching Square customers."
      },
      "outputSchema": {
        "type": "object",
        "properties": {
          "customers": {
            "type": "array",
            "items": {
              "type": "object",
              "properties": {
                "id": {
                  "type": "string",
                  "description": "The Square customer ID."
                },
                "created_at": {
                  "type": "string",
                  "description": "The time when Square created the customer."
                },
                "updated_at": {
                  "type": "string",
                  "description": "The time when Square last updated the customer."
                },
                "cards": {
                  "type": "array",
                  "items": {
                    "type": "object",
                    "properties": {},
                    "additionalProperties": true,
                    "description": "A Square card object."
                  },
                  "description": "Cards associated with the customer."
                },
                "given_name": {
                  "type": "string",
                  "description": "The customer's given name."
                },
                "family_name": {
                  "type": "string",
                  "description": "The customer's family name."
                },
                "nickname": {
                  "type": "string",
                  "description": "The customer's nickname."
                },
                "company_name": {
                  "type": "string",
                  "description": "The customer's company name."
                },
                "email_address": {
                  "type": "string",
                  "description": "The customer's email address."
                },
                "address": {
                  "type": "object",
                  "properties": {
                    "address_line_1": {
                      "type": "string",
                      "description": "The first line of the address."
                    },
                    "address_line_2": {
                      "type": "string",
                      "description": "The second line of the address."
                    },
                    "address_line_3": {
                      "type": "string",
                      "description": "The third line of the address."
                    },
                    "locality": {
                      "type": "string",
                      "description": "The city or locality."
                    },
                    "sublocality": {
                      "type": "string",
                      "description": "The neighborhood or sublocality."
                    },
                    "administrative_district_level_1": {
                      "type": "string",
                      "description": "The first-level administrative district."
                    },
                    "postal_code": {
                      "type": "string",
                      "description": "The postal code."
                    },
                    "country": {
                      "type": "string",
                      "description": "The country code."
                    }
                  },
                  "additionalProperties": true,
                  "description": "A Square address object."
                },
                "phone_number": {
                  "type": "string",
                  "description": "The customer's phone number."
                },
                "birthday": {
                  "type": "string",
                  "description": "The customer's birthday in Square format."
                },
                "reference_id": {
                  "type": "string",
                  "description": "The merchant-defined customer reference ID."
                },
                "note": {
                  "type": "string",
                  "description": "The merchant-defined note for the customer."
                },
                "preferences": {
                  "type": "object",
                  "properties": {
                    "email_unsubscribed": {
                      "type": "boolean",
                      "description": "Whether the customer is unsubscribed from marketing email."
                    }
                  },
                  "additionalProperties": true,
                  "description": "Square customer preferences."
                },
                "creation_source": {
                  "type": "string",
                  "description": "The Square customer creation source."
                },
                "group_ids": {
                  "type": "array",
                  "items": {
                    "type": "string",
                    "description": "A Square customer group ID."
                  },
                  "description": "Customer group IDs returned by Square."
                },
                "segment_ids": {
                  "type": "array",
                  "items": {
                    "type": "string",
                    "description": "A Square customer segment ID."
                  },
                  "description": "Customer segment IDs returned by Square."
                },
                "tax_ids": {
                  "type": "object",
                  "properties": {
                    "eu_vat": {
                      "type": "string",
                      "description": "The customer's EU VAT ID."
                    }
                  },
                  "additionalProperties": true,
                  "description": "Square customer tax IDs."
                },
                "version": {
                  "type": "integer",
                  "description": "The Square customer version for optimistic concurrency."
                }
              },
              "additionalProperties": true,
              "description": "A Square customer profile."
            },
            "description": "Customers returned by Square."
          },
          "cursor": {
            "anyOf": [
              {
                "type": "string",
                "description": "Cursor returned by Square, when another page is available."
              },
              {
                "type": "null"
              }
            ]
          },
          "nextCursor": {
            "anyOf": [
              {
                "type": "string",
                "description": "Cursor to pass into the next request, when one is available."
              },
              {
                "type": "null"
              }
            ]
          }
        },
        "additionalProperties": false,
        "description": "Paginated Square customers response."
      }
    },
    {
      "id": "square.update_customer",
      "service": "square",
      "name": "update_customer",
      "description": "Update a Square customer profile by ID.",
      "requiredScopes": [],
      "providerPermissions": [],
      "inputSchema": {
        "type": "object",
        "properties": {
          "customer_id": {
            "type": "string",
            "minLength": 1,
            "description": "The Square customer ID."
          },
          "customer": {
            "type": "object",
            "properties": {
              "given_name": {
                "type": "string",
                "description": "The customer's given name."
              },
              "family_name": {
                "type": "string",
                "description": "The customer's family name."
              },
              "company_name": {
                "type": "string",
                "description": "The customer's company name."
              },
              "nickname": {
                "type": "string",
                "description": "The customer's nickname."
              },
              "email_address": {
                "type": "string",
                "description": "The customer's email address."
              },
              "address": {
                "type": "object",
                "properties": {
                  "address_line_1": {
                    "type": "string",
                    "description": "The first line of the address."
                  },
                  "address_line_2": {
                    "type": "string",
                    "description": "The second line of the address."
                  },
                  "address_line_3": {
                    "type": "string",
                    "description": "The third line of the address."
                  },
                  "locality": {
                    "type": "string",
                    "description": "The city or locality."
                  },
                  "sublocality": {
                    "type": "string",
                    "description": "The neighborhood or sublocality."
                  },
                  "administrative_district_level_1": {
                    "type": "string",
                    "description": "The first-level administrative district."
                  },
                  "postal_code": {
                    "type": "string",
                    "description": "The postal code."
                  },
                  "country": {
                    "type": "string",
                    "description": "The country code."
                  }
                },
                "additionalProperties": true,
                "description": "A Square address object."
              },
              "phone_number": {
                "type": "string",
                "description": "The customer's phone number."
              },
              "reference_id": {
                "type": "string",
                "description": "The merchant-defined customer reference ID."
              },
              "note": {
                "type": "string",
                "description": "The merchant-defined note for the customer."
              },
              "birthday": {
                "type": "string",
                "description": "The customer's birthday in Square format."
              },
              "tax_ids": {
                "type": "object",
                "properties": {
                  "eu_vat": {
                    "type": "string",
                    "description": "The customer's EU VAT ID."
                  }
                },
                "additionalProperties": true,
                "description": "Square customer tax IDs."
              },
              "version": {
                "type": "integer",
                "description": "The Square customer version for optimistic concurrency."
              }
            },
            "additionalProperties": true,
            "description": "Square customer fields to send in the request body."
          }
        },
        "additionalProperties": false,
        "description": "Request body for updating a Square customer."
      },
      "outputSchema": {
        "type": "object",
        "properties": {
          "customer": {
            "type": "object",
            "properties": {
              "id": {
                "type": "string",
                "description": "The Square customer ID."
              },
              "created_at": {
                "type": "string",
                "description": "The time when Square created the customer."
              },
              "updated_at": {
                "type": "string",
                "description": "The time when Square last updated the customer."
              },
              "cards": {
                "type": "array",
                "items": {
                  "type": "object",
                  "properties": {},
                  "additionalProperties": true,
                  "description": "A Square card object."
                },
                "description": "Cards associated with the customer."
              },
              "given_name": {
                "type": "string",
                "description": "The customer's given name."
              },
              "family_name": {
                "type": "string",
                "description": "The customer's family name."
              },
              "nickname": {
                "type": "string",
                "description": "The customer's nickname."
              },
              "company_name": {
                "type": "string",
                "description": "The customer's company name."
              },
              "email_address": {
                "type": "string",
                "description": "The customer's email address."
              },
              "address": {
                "type": "object",
                "properties": {
                  "address_line_1": {
                    "type": "string",
                    "description": "The first line of the address."
                  },
                  "address_line_2": {
                    "type": "string",
                    "description": "The second line of the address."
                  },
                  "address_line_3": {
                    "type": "string",
                    "description": "The third line of the address."
                  },
                  "locality": {
                    "type": "string",
                    "description": "The city or locality."
                  },
                  "sublocality": {
                    "type": "string",
                    "description": "The neighborhood or sublocality."
                  },
                  "administrative_district_level_1": {
                    "type": "string",
                    "description": "The first-level administrative district."
                  },
                  "postal_code": {
                    "type": "string",
                    "description": "The postal code."
                  },
                  "country": {
                    "type": "string",
                    "description": "The country code."
                  }
                },
                "additionalProperties": true,
                "description": "A Square address object."
              },
              "phone_number": {
                "type": "string",
                "description": "The customer's phone number."
              },
              "birthday": {
                "type": "string",
                "description": "The customer's birthday in Square format."
              },
              "reference_id": {
                "type": "string",
                "description": "The merchant-defined customer reference ID."
              },
              "note": {
                "type": "string",
                "description": "The merchant-defined note for the customer."
              },
              "preferences": {
                "type": "object",
                "properties": {
                  "email_unsubscribed": {
                    "type": "boolean",
                    "description": "Whether the customer is unsubscribed from marketing email."
                  }
                },
                "additionalProperties": true,
                "description": "Square customer preferences."
              },
              "creation_source": {
                "type": "string",
                "description": "The Square customer creation source."
              },
              "group_ids": {
                "type": "array",
                "items": {
                  "type": "string",
                  "description": "A Square customer group ID."
                },
                "description": "Customer group IDs returned by Square."
              },
              "segment_ids": {
                "type": "array",
                "items": {
                  "type": "string",
                  "description": "A Square customer segment ID."
                },
                "description": "Customer segment IDs returned by Square."
              },
              "tax_ids": {
                "type": "object",
                "properties": {
                  "eu_vat": {
                    "type": "string",
                    "description": "The customer's EU VAT ID."
                  }
                },
                "additionalProperties": true,
                "description": "Square customer tax IDs."
              },
              "version": {
                "type": "integer",
                "description": "The Square customer version for optimistic concurrency."
              }
            },
            "additionalProperties": true,
            "description": "A Square customer profile."
          }
        },
        "additionalProperties": false,
        "description": "Square customer response."
      }
    }
  ]
}
