{
  "swagger": "2.0",
  "info": {
    "description": "Kinship API documentation",
    "version": "TODO - inject git sha/tag",
    "title": "Kinship API",
    "contact": {},
    "license": {
      "name": ""
    }
  },
  "schemes": [
    "https",
    "http"
  ],
  "securityDefinitions": {
    "Bearer": {
      "type": "apiKey",
      "name": "Authorization",
      "in": "header"
    }
  },
  "basePath": "/api/v1",
  "tags": [
    {
      "name": "health",
      "description": "api health"
    },
    {
      "name": "user-profile",
      "description": "user profiles"
    },
    {
      "name": "pet-profile",
      "description": "pet profiles"
    },
    {
      "name": "asset",
      "description": "asset (images etc) apis"
    },
    {
      "name": "vet",
      "description": "vet services"
    },
    {
      "name": "vet-search",
      "description": "Uses the vet finder service to return nearby MVH clinics"
    },
    {
      "name": "external",
      "description": "external services"
    },
    {
      "name": "breed",
      "description": "breed"
    },
    {
      "name": "task",
      "description": "server side task recording apis - requires clientId & secret"
    },
    {
      "name": "dead-letter",
      "description": ""
    },
    {
      "name": "newsletter",
      "description": ""
    },
    {
      "name": "auth",
      "description": ""
    },
    {
      "name": "search",
      "description": "api health"
    },
    {
      "name": "photocontest",
      "description": "photo contest"
    },
    {
      "name": "admin",
      "description": "admin functions"
    }
  ],
  "paths": {
    "/health": {
      "get": {
        "x-swagger-router-controller": "health",
        "tags": [
          "health"
        ],
        "summary": "checks api health",
        "operationId": "get_health",
        "consumes": [
          "application/json"
        ],
        "produces": [
          "application/json"
        ],
        "parameters": [],
        "responses": {
          "200": {
            "description": "OK",
            "schema": {}
          },
          "401": {
            "description": "Unauthorized"
          },
          "403": {
            "description": "Forbidden"
          },
          "404": {
            "description": "Not Found"
          },
          "500": {
            "description": "Internal error"
          }
        },
        "deprecated": false
      }
    },
    "/config": {
      "get": {
        "security": [
          {
            "Bearer": []
          }
        ],
        "x-security-scopes": [
          "get_config"
        ],
        "x-swagger-router-controller": "health",
        "tags": [
          "health"
        ],
        "summary": "checks api config",
        "operationId": "get_config",
        "consumes": [
          "application/json"
        ],
        "produces": [
          "application/json"
        ],
        "parameters": [],
        "responses": {
          "200": {
            "description": "OK",
            "schema": {}
          },
          "401": {
            "description": "Unauthorized"
          },
          "403": {
            "description": "Forbidden"
          },
          "404": {
            "description": "Not Found"
          },
          "500": {
            "description": "Internal error"
          }
        },
        "deprecated": false
      }
    },
    "/user-profiles": {
      "post": {
        "security": [
          {
            "Bearer": []
          }
        ],
        "x-security-scopes": [
          "kintopia-api-resource-server/user-profile.read"
        ],
        "x-swagger-router-controller": "user-profile",
        "tags": [
          "user-profile"
        ],
        "summary": "gets user-profiles for given emails",
        "operationId": "get_users_by_emails",
        "consumes": [
          "application/json"
        ],
        "produces": [
          "application/json"
        ],
        "parameters": [
          {
            "in": "body",
            "name": "userProfilesGet",
            "description": "userProfilesGet",
            "required": true,
            "schema": {
              "type": "object",
              "additionalProperties": false,
              "required": [
                "emails",
                "fields"
              ],
              "properties": {
                "emails": {
                  "type": "array"
                },
                "fields": {
                  "type": "array"
                }
              }
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "schema": {
              "type": "array",
              "items": {
                "$ref": "#/definitions/UserProfileGetDTO"
              }
            }
          },
          "401": {
            "description": "Unauthorized",
            "schema": {
              "$ref": "#/definitions/ProblemDetailVM"
            }
          },
          "403": {
            "description": "Forbidden",
            "schema": {
              "$ref": "#/definitions/ProblemDetailVM"
            }
          },
          "404": {
            "description": "Not Found",
            "schema": {
              "$ref": "#/definitions/ProblemDetailVM"
            }
          },
          "500": {
            "description": "Internal error",
            "schema": {
              "$ref": "#/definitions/ProblemDetailVM"
            }
          }
        },
        "deprecated": false
      }
    },
    "/my-profile/partner": {
      "post": {
        "security": [
          {
            "Bearer": []
          }
        ],
        "x-swagger-router-controller": "user-profile",
        "tags": [
          "user-profile"
        ],
        "summary": "creates a partnership for a user",
        "operationId": "create_my_partner",
        "consumes": [
          "application/json"
        ],
        "produces": [
          "application/json"
        ],
        "parameters": [
          {
            "in": "body",
            "name": "ProfilePartnerPostDTO",
            "description": "ProfilePartnerPostDTO",
            "required": true,
            "schema": {
              "$ref": "#/definitions/ProfilePartnerPostDTO"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "schema": {
              "$ref": "#/definitions/ProfilePartnerPostDTO"
            }
          },
          "401": {
            "description": "Unauthorized",
            "schema": {
              "$ref": "#/definitions/ProblemDetailVM"
            }
          },
          "403": {
            "description": "Forbidden",
            "schema": {
              "$ref": "#/definitions/ProblemDetailVM"
            }
          },
          "404": {
            "description": "Not Found",
            "schema": {
              "$ref": "#/definitions/ProblemDetailVM"
            }
          },
          "500": {
            "description": "Internal error",
            "schema": {
              "$ref": "#/definitions/ProblemDetailVM"
            }
          }
        },
        "deprecated": false
      },
      "put": {
        "security": [
          {
            "Bearer": []
          }
        ],
        "x-swagger-router-controller": "user-profile",
        "tags": [
          "user-profile"
        ],
        "summary": "updates the partnership for a user",
        "operationId": "update_my_partner",
        "consumes": [
          "application/json"
        ],
        "produces": [
          "application/json"
        ],
        "parameters": [
          {
            "in": "body",
            "name": "ProfilePartnerPutDTO",
            "description": "ProfilePartnerPutDTO",
            "required": true,
            "schema": {
              "$ref": "#/definitions/ProfilePartnerPutDTO"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "schema": {
              "$ref": "#/definitions/ProfilePartnerPutDTO"
            }
          },
          "401": {
            "description": "Unauthorized",
            "schema": {
              "$ref": "#/definitions/ProblemDetailVM"
            }
          },
          "403": {
            "description": "Forbidden",
            "schema": {
              "$ref": "#/definitions/ProblemDetailVM"
            }
          },
          "404": {
            "description": "Not Found",
            "schema": {
              "$ref": "#/definitions/ProblemDetailVM"
            }
          },
          "500": {
            "description": "Internal error",
            "schema": {
              "$ref": "#/definitions/ProblemDetailVM"
            }
          }
        },
        "deprecated": false
      },
      "get": {
        "security": [
          {
            "Bearer": []
          }
        ],
        "x-swagger-router-controller": "user-profile",
        "tags": [
          "user-profile"
        ],
        "summary": "gets the partnership info for the current user",
        "operationId": "get_my_partner",
        "consumes": [
          "application/json"
        ],
        "produces": [
          "application/json"
        ],
        "parameters": [],
        "responses": {
          "200": {
            "description": "OK",
            "schema": {
              "$ref": "#/definitions/ProfilePartnerGetDTO"
            }
          },
          "401": {
            "description": "Unauthorized",
            "schema": {
              "$ref": "#/definitions/ProblemDetailVM"
            }
          },
          "403": {
            "description": "Forbidden",
            "schema": {
              "$ref": "#/definitions/ProblemDetailVM"
            }
          },
          "404": {
            "description": "Not Found",
            "schema": {
              "$ref": "#/definitions/ProblemDetailVM"
            }
          },
          "500": {
            "description": "Internal error",
            "schema": {
              "$ref": "#/definitions/ProblemDetailVM"
            }
          }
        },
        "deprecated": false
      }
    },
    "/my-profile/littlekin/consents": {
      "post": {
        "security": [
          {
            "Bearer": []
          }
        ],
        "x-swagger-router-controller": "user-profile",
        "tags": [
          "user-profile"
        ],
        "summary": "creates the consents for littlekin",
        "operationId": "create_littlekin_consents",
        "consumes": [
          "application/json"
        ],
        "produces": [
          "application/json"
        ],
        "parameters": [
          {
            "in": "body",
            "name": "ProfileConsentPostDTO",
            "description": "ProfileConsentPostDTO",
            "required": true,
            "schema": {
              "$ref": "#/definitions/ProfileConsentPostDTO"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "schema": {
              "$ref": "#/definitions/ProfileConsentPostDTO"
            }
          },
          "401": {
            "description": "Unauthorized",
            "schema": {
              "$ref": "#/definitions/ProblemDetailVM"
            }
          },
          "403": {
            "description": "Forbidden",
            "schema": {
              "$ref": "#/definitions/ProblemDetailVM"
            }
          },
          "404": {
            "description": "Not Found",
            "schema": {
              "$ref": "#/definitions/ProblemDetailVM"
            }
          },
          "500": {
            "description": "Internal error",
            "schema": {
              "$ref": "#/definitions/ProblemDetailVM"
            }
          }
        },
        "deprecated": false
      }
    },
    "/my-profile": {
      "patch": {
        "security": [
          {
            "Bearer": []
          }
        ],
        "x-swagger-router-controller": "user-profile",
        "tags": [
          "user-profile"
        ],
        "summary": "updates (or creates) owner user-profile",
        "operationId": "patch_my_profile",
        "consumes": [
          "application/json"
        ],
        "produces": [
          "application/json"
        ],
        "parameters": [
          {
            "in": "body",
            "name": "userProfilePatchDTO",
            "description": "userProfilePatchDTO",
            "required": true,
            "schema": {
              "$ref": "#/definitions/UserProfilePatchDTO"
            }
          },
          {
            "name": "find_by_email",
            "in": "query",
            "description": "Force user search by email",
            "required": false,
            "type": "string",
            "default": "false",
            "enum": [
              "true",
              "false"
            ]
          },
          {
            "name": "new_user",
            "in": "query",
            "description": "new user call",
            "required": false,
            "type": "string",
            "default": "false",
            "enum": [
              "true",
              "false"
            ]
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "schema": {
              "$ref": "#/definitions/UserProfilePatchDTO"
            }
          },
          "401": {
            "description": "Unauthorized",
            "schema": {
              "$ref": "#/definitions/ProblemDetailVM"
            }
          },
          "403": {
            "description": "Forbidden",
            "schema": {
              "$ref": "#/definitions/ProblemDetailVM"
            }
          },
          "404": {
            "description": "Not Found",
            "schema": {
              "$ref": "#/definitions/ProblemDetailVM"
            }
          },
          "500": {
            "description": "Internal error",
            "schema": {
              "$ref": "#/definitions/ProblemDetailVM"
            }
          }
        },
        "deprecated": false
      },
      "get": {
        "security": [
          {
            "Bearer": []
          }
        ],
        "x-swagger-router-controller": "user-profile",
        "tags": [
          "user-profile"
        ],
        "summary": "gets user-profile for signed in user",
        "operationId": "get_my_profile",
        "consumes": [
          "application/json"
        ],
        "produces": [
          "application/json"
        ],
        "parameters": [],
        "responses": {
          "200": {
            "description": "OK",
            "schema": {
              "$ref": "#/definitions/UserProfileGetDTO"
            }
          },
          "401": {
            "description": "Unauthorized",
            "schema": {
              "$ref": "#/definitions/ProblemDetailVM"
            }
          },
          "403": {
            "description": "Forbidden",
            "schema": {
              "$ref": "#/definitions/ProblemDetailVM"
            }
          },
          "404": {
            "description": "Not Found",
            "schema": {
              "$ref": "#/definitions/ProblemDetailVM"
            }
          },
          "500": {
            "description": "Internal error",
            "schema": {
              "$ref": "#/definitions/ProblemDetailVM"
            }
          }
        },
        "deprecated": false
      }
    },
    "/my-profile/additional-info": {
      "get": {
        "security": [
          {
            "Bearer": []
          }
        ],
        "x-swagger-router-controller": "user-profile-additional-info",
        "tags": [
          "user-profile"
        ],
        "summary": "(SECURED)",
        "operationId": "get_all_additional_info",
        "consumes": [
          "application/json"
        ],
        "produces": [
          "application/json"
        ],
        "parameters": [],
        "responses": {
          "200": {
            "description": "OK",
            "schema": {
              "type": "array",
              "items": {
                "$ref": "#/definitions/UserProfileAdditionalInfoDTO"
              }
            }
          },
          "204": {
            "description": "No Content"
          },
          "401": {
            "description": "Unauthorized",
            "schema": {
              "$ref": "#/definitions/ProblemDetailVM"
            }
          },
          "403": {
            "description": "Forbidden",
            "schema": {
              "$ref": "#/definitions/ProblemDetailVM"
            }
          },
          "404": {
            "description": "Not Found",
            "schema": {
              "$ref": "#/definitions/ProblemDetailVM"
            }
          },
          "500": {
            "description": "Internal error",
            "schema": {
              "$ref": "#/definitions/ProblemDetailVM"
            }
          }
        },
        "deprecated": false
      }
    },
    "/my-profile/additional-info/{domain}": {
      "get": {
        "security": [
          {
            "Bearer": []
          }
        ],
        "x-swagger-router-controller": "user-profile-additional-info",
        "tags": [
          "user-profile"
        ],
        "summary": "(SECURED)",
        "operationId": "get_additional_info",
        "consumes": [
          "application/json"
        ],
        "produces": [
          "application/json"
        ],
        "parameters": [
          {
            "name": "domain",
            "in": "path",
            "description": "domain",
            "required": true,
            "type": "string"
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "schema": {
              "type": "array",
              "items": {
                "$ref": "#/definitions/UserProfileAdditionalInfoDTO"
              }
            }
          },
          "204": {
            "description": "No Content"
          },
          "401": {
            "description": "Unauthorized",
            "schema": {
              "$ref": "#/definitions/ProblemDetailVM"
            }
          },
          "403": {
            "description": "Forbidden",
            "schema": {
              "$ref": "#/definitions/ProblemDetailVM"
            }
          },
          "404": {
            "description": "Not Found",
            "schema": {
              "$ref": "#/definitions/ProblemDetailVM"
            }
          },
          "500": {
            "description": "Internal error",
            "schema": {
              "$ref": "#/definitions/ProblemDetailVM"
            }
          }
        },
        "deprecated": false
      },
      "patch": {
        "security": [
          {
            "Bearer": []
          }
        ],
        "x-swagger-router-controller": "user-profile-additional-info",
        "tags": [
          "user-profile"
        ],
        "summary": "(SECURED)",
        "operationId": "patch_additional_info",
        "consumes": [
          "application/json"
        ],
        "produces": [
          "application/json"
        ],
        "parameters": [
          {
            "name": "domain",
            "in": "path",
            "description": "domain",
            "required": true,
            "type": "string",
            "enum": [
              "HEALTH",
              "ONBOARDING",
              "TODO",
              "VETINSIGHT",
              "COBRANDED_ONBOARDING"
            ]
          },
          {
            "in": "body",
            "name": "data",
            "description": "Data",
            "schema": {
              "type": "object",
              "additionalProperties": false,
              "required": [
                "data"
              ],
              "properties": {
                "data": {
                  "type": "object"
                }
              }
            }
          }
        ],
        "responses": {
          "201": {
            "description": "OK",
            "schema": {
              "$ref": "#/definitions/UserProfileAdditionalInfoDTO"
            }
          },
          "401": {
            "description": "Unauthorized",
            "schema": {
              "$ref": "#/definitions/ProblemDetailVM"
            }
          },
          "403": {
            "description": "Forbidden",
            "schema": {
              "$ref": "#/definitions/ProblemDetailVM"
            }
          },
          "404": {
            "description": "Not Found",
            "schema": {
              "$ref": "#/definitions/ProblemDetailVM"
            }
          },
          "500": {
            "description": "Internal error",
            "schema": {
              "$ref": "#/definitions/ProblemDetailVM"
            }
          }
        },
        "deprecated": false
      }
    },
    "/my-profile/preference/notification": {
      "get": {
        "security": [
          {
            "Bearer": []
          }
        ],
        "x-swagger-router-controller": "user-profile",
        "tags": [
          "user-profile"
        ],
        "summary": "gets a all notification preferencesfor a signed in user",
        "operationId": "get_preference_notifications",
        "consumes": [
          "application/json"
        ],
        "produces": [
          "application/json"
        ],
        "parameters": [
          {
            "name": "env",
            "in": "query",
            "description": "environment to fetch preferences for",
            "required": false,
            "type": "string",
            "default": "tw",
            "enum": [
              "kin",
              "tw"
            ]
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "schema": {
              "type": "array",
              "items": {
                "$ref": "#/definitions/PreferenceNotificationGetDTO"
              }
            }
          },
          "401": {
            "description": "Unauthorized",
            "schema": {
              "$ref": "#/definitions/ProblemDetailVM"
            }
          },
          "403": {
            "description": "Forbidden",
            "schema": {
              "$ref": "#/definitions/ProblemDetailVM"
            }
          },
          "404": {
            "description": "Not Found",
            "schema": {
              "$ref": "#/definitions/ProblemDetailVM"
            }
          },
          "500": {
            "description": "Internal error",
            "schema": {
              "$ref": "#/definitions/ProblemDetailVM"
            }
          }
        },
        "deprecated": false
      },
      "patch": {
        "security": [
          {
            "Bearer": []
          }
        ],
        "x-swagger-router-controller": "user-profile",
        "tags": [
          "user-profile"
        ],
        "summary": "updates ALL notification preferences for a signed in user (ALL SUBCRIPTIONS AND UNSUBSCRIPTIONS TO BE SUPPLIED)",
        "operationId": "patch_preference_notifications",
        "consumes": [
          "application/json"
        ],
        "produces": [
          "application/json"
        ],
        "parameters": [
          {
            "name": "env",
            "in": "query",
            "description": "environment to patch preferences for",
            "required": false,
            "type": "string",
            "default": "tw",
            "enum": [
              "kin",
              "tw"
            ]
          },
          {
            "in": "body",
            "name": "data",
            "description": "dataload",
            "required": true,
            "schema": {
              "type": "array",
              "items": {
                "$ref": "#/definitions/PreferenceNotificationPatchDTO"
              }
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "schema": {
              "type": "array",
              "items": {
                "$ref": "#/definitions/PreferenceNotificationGetDTO"
              }
            }
          },
          "401": {
            "description": "Unauthorized",
            "schema": {
              "$ref": "#/definitions/ProblemDetailVM"
            }
          },
          "403": {
            "description": "Forbidden",
            "schema": {
              "$ref": "#/definitions/ProblemDetailVM"
            }
          },
          "404": {
            "description": "Not Found",
            "schema": {
              "$ref": "#/definitions/ProblemDetailVM"
            }
          },
          "500": {
            "description": "Internal error",
            "schema": {
              "$ref": "#/definitions/ProblemDetailVM"
            }
          }
        },
        "deprecated": false
      }
    },
    "/my-profile/sign-in-history": {
      "post": {
        "security": [
          {
            "Bearer": []
          }
        ],
        "x-swagger-router-controller": "sign-in-history",
        "tags": [
          "user-profile"
        ],
        "summary": "Record a sign in from a source",
        "operationId": "post_sign_in_history",
        "consumes": [
          "application/json"
        ],
        "produces": [
          "application/json"
        ],
        "parameters": [
          {
            "in": "body",
            "name": "sign in ",
            "description": "",
            "schema": {
              "type": "object",
              "additionalProperties": false,
              "required": [
                "source"
              ],
              "properties": {
                "source": {
                  "type": "string",
                  "title": "the source app",
                  "description": "the source app",
                  "enum": [
                    "THE_WILDEST"
                  ]
                },
                "partner": {
                  "type": "string",
                  "title": "the partner",
                  "description": "the partner",
                  "enum": [
                    "WWW",
                    "WALMART"
                  ]
                },
                "sign_in_type": {
                  "type": "string",
                  "title": "how they signed in",
                  "description": "how they signed in",
                  "enum": [
                    "ONBOARDING",
                    "ONBOARDING_SSO",
                    "PASSWORD",
                    "PASSWORD_RESET",
                    "SSO"
                  ]
                },
                "data": {
                  "type": "object"
                }
              }
            }
          }
        ],
        "responses": {
          "201": {
            "description": "OK",
            "schema": {
              "$ref": "#/definitions/SignInHistoryDTO"
            }
          },
          "401": {
            "description": "Unauthorized",
            "schema": {
              "$ref": "#/definitions/ProblemDetailVM"
            }
          },
          "403": {
            "description": "Forbidden",
            "schema": {
              "$ref": "#/definitions/ProblemDetailVM"
            }
          },
          "404": {
            "description": "Not Found",
            "schema": {
              "$ref": "#/definitions/ProblemDetailVM"
            }
          },
          "500": {
            "description": "Internal error",
            "schema": {
              "$ref": "#/definitions/ProblemDetailVM"
            }
          }
        },
        "deprecated": false
      }
    },
    "/my-profile/sign-in-history/count/{source}": {
      "get": {
        "security": [
          {
            "Bearer": []
          }
        ],
        "x-swagger-router-controller": "sign-in-history",
        "tags": [
          "user-profile"
        ],
        "summary": "Record a sign in from a source",
        "operationId": "get_sign_in_history_count",
        "consumes": [
          "application/json"
        ],
        "produces": [
          "application/json"
        ],
        "parameters": [
          {
            "name": "source",
            "in": "path",
            "description": "source",
            "required": true,
            "type": "string",
            "enum": [
              "THE_WILDEST"
            ]
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "schema": {
              "type": "object",
              "additionalProperties": false,
              "required": [
                "count"
              ],
              "properties": {
                "count": {
                  "type": "integer"
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized",
            "schema": {
              "$ref": "#/definitions/ProblemDetailVM"
            }
          },
          "403": {
            "description": "Forbidden",
            "schema": {
              "$ref": "#/definitions/ProblemDetailVM"
            }
          },
          "404": {
            "description": "Not Found",
            "schema": {
              "$ref": "#/definitions/ProblemDetailVM"
            }
          },
          "500": {
            "description": "Internal error",
            "schema": {
              "$ref": "#/definitions/ProblemDetailVM"
            }
          }
        },
        "deprecated": false
      }
    },
    "/my-profile/point/balance": {
      "get": {
        "security": [
          {
            "Bearer": []
          }
        ],
        "x-swagger-router-controller": "point",
        "tags": [
          "user-profile"
        ],
        "summary": "",
        "operationId": "get_my_profile_points_balance",
        "consumes": [
          "application/json"
        ],
        "produces": [
          "application/json"
        ],
        "parameters": [],
        "responses": {
          "201": {
            "description": "OK",
            "schema": {
              "$ref": "#/definitions/UserProfilePointBalanceGetDTO"
            }
          },
          "401": {
            "description": "Unauthorized",
            "schema": {
              "$ref": "#/definitions/ProblemDetailVM"
            }
          },
          "403": {
            "description": "Forbidden",
            "schema": {
              "$ref": "#/definitions/ProblemDetailVM"
            }
          },
          "404": {
            "description": "Not Found",
            "schema": {
              "$ref": "#/definitions/ProblemDetailVM"
            }
          },
          "500": {
            "description": "Internal error",
            "schema": {
              "$ref": "#/definitions/ProblemDetailVM"
            }
          }
        },
        "deprecated": false
      }
    },
    "/my-profile/training": {
      "get": {
        "security": [
          {
            "Bearer": []
          }
        ],
        "x-swagger-router-controller": "user-profile-training",
        "tags": [
          "user-profile"
        ],
        "summary": "(SECURED)",
        "operationId": "get_all_training",
        "consumes": [
          "application/json"
        ],
        "produces": [
          "application/json"
        ],
        "parameters": [],
        "responses": {
          "200": {
            "description": "OK",
            "schema": {
              "type": "array",
              "items": {
                "$ref": "#/definitions/UserProfileTrainingGetDTO"
              }
            }
          },
          "401": {
            "description": "Unauthorized",
            "schema": {
              "$ref": "#/definitions/ProblemDetailVM"
            }
          },
          "403": {
            "description": "Forbidden",
            "schema": {
              "$ref": "#/definitions/ProblemDetailVM"
            }
          },
          "404": {
            "description": "Not Found",
            "schema": {
              "$ref": "#/definitions/ProblemDetailVM"
            }
          },
          "500": {
            "description": "Internal error",
            "schema": {
              "$ref": "#/definitions/ProblemDetailVM"
            }
          }
        },
        "deprecated": false
      }
    },
    "/my-profile/training/{module}": {
      "get": {
        "security": [
          {
            "Bearer": []
          }
        ],
        "x-swagger-router-controller": "user-profile-training",
        "tags": [
          "user-profile"
        ],
        "summary": "(SECURED)",
        "operationId": "get_training",
        "consumes": [
          "application/json"
        ],
        "produces": [
          "application/json"
        ],
        "parameters": [
          {
            "name": "module",
            "in": "path",
            "description": "module",
            "required": true,
            "type": "string"
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "schema": {
              "type": "array",
              "items": {
                "$ref": "#/definitions/UserProfileTrainingGetDTO"
              }
            }
          },
          "401": {
            "description": "Unauthorized",
            "schema": {
              "$ref": "#/definitions/ProblemDetailVM"
            }
          },
          "403": {
            "description": "Forbidden",
            "schema": {
              "$ref": "#/definitions/ProblemDetailVM"
            }
          },
          "404": {
            "description": "Not Found",
            "schema": {
              "$ref": "#/definitions/ProblemDetailVM"
            }
          },
          "500": {
            "description": "Internal error",
            "schema": {
              "$ref": "#/definitions/ProblemDetailVM"
            }
          }
        },
        "deprecated": false
      },
      "patch": {
        "security": [
          {
            "Bearer": []
          }
        ],
        "x-swagger-router-controller": "user-profile-training",
        "tags": [
          "user-profile"
        ],
        "summary": "(SECURED)",
        "operationId": "patch_training_lesson",
        "consumes": [
          "application/json"
        ],
        "produces": [
          "application/json"
        ],
        "parameters": [
          {
            "name": "module",
            "in": "path",
            "description": "module",
            "required": true,
            "type": "string"
          },
          {
            "in": "body",
            "name": "UserProfileTrainingPatchDTO",
            "description": "UserProfileTrainingPatchDTO",
            "required": true,
            "schema": {
              "$ref": "#/definitions/UserProfileTrainingPatchDTO"
            }
          }
        ],
        "responses": {
          "201": {
            "description": "OK",
            "schema": {
              "$ref": "#/definitions/UserProfileTrainingPatchReturnDTO"
            }
          },
          "401": {
            "description": "Unauthorized",
            "schema": {
              "$ref": "#/definitions/ProblemDetailVM"
            }
          },
          "403": {
            "description": "Forbidden",
            "schema": {
              "$ref": "#/definitions/ProblemDetailVM"
            }
          },
          "404": {
            "description": "Not Found",
            "schema": {
              "$ref": "#/definitions/ProblemDetailVM"
            }
          },
          "500": {
            "description": "Internal error",
            "schema": {
              "$ref": "#/definitions/ProblemDetailVM"
            }
          }
        },
        "deprecated": false
      }
    },
    "/my-profile/training/{module}/{lesson}": {
      "patch": {
        "security": [
          {
            "Bearer": []
          }
        ],
        "x-swagger-router-controller": "user-profile-training",
        "tags": [
          "user-profile"
        ],
        "summary": "(SECURED)",
        "operationId": "patch_training_lesson",
        "consumes": [
          "application/json"
        ],
        "produces": [
          "application/json"
        ],
        "parameters": [
          {
            "name": "module",
            "in": "path",
            "description": "module",
            "required": true,
            "type": "string"
          },
          {
            "name": "lesson",
            "in": "path",
            "description": "lesson",
            "required": true,
            "type": "string"
          },
          {
            "in": "body",
            "name": "UserProfileTrainingPatchDTO",
            "description": "UserProfileTrainingPatchDTO",
            "required": true,
            "schema": {
              "$ref": "#/definitions/UserProfileTrainingPatchDTO"
            }
          }
        ],
        "responses": {
          "201": {
            "description": "OK",
            "schema": {
              "$ref": "#/definitions/UserProfileTrainingPatchReturnDTO"
            }
          },
          "401": {
            "description": "Unauthorized",
            "schema": {
              "$ref": "#/definitions/ProblemDetailVM"
            }
          },
          "403": {
            "description": "Forbidden",
            "schema": {
              "$ref": "#/definitions/ProblemDetailVM"
            }
          },
          "404": {
            "description": "Not Found",
            "schema": {
              "$ref": "#/definitions/ProblemDetailVM"
            }
          },
          "500": {
            "description": "Internal error",
            "schema": {
              "$ref": "#/definitions/ProblemDetailVM"
            }
          }
        },
        "deprecated": false
      }
    },
    "/my-profile/asset": {
      "put": {
        "security": [
          {
            "Bearer": []
          }
        ],
        "x-swagger-router-controller": "asset",
        "tags": [
          "asset"
        ],
        "summary": "upload user profile asset",
        "operationId": "put_my_profile_asset",
        "consumes": [
          "multipart/form-data"
        ],
        "produces": [
          "application/json"
        ],
        "parameters": [
          {
            "name": "file",
            "in": "formData",
            "description": "file",
            "required": true,
            "type": "file"
          },
          {
            "name": "crop_left_offset",
            "in": "formData",
            "description": "left offset",
            "required": false,
            "type": "integer",
            "format": "int64",
            "minimum": 0
          },
          {
            "name": "crop_top_offset",
            "in": "formData",
            "description": "top offset",
            "required": false,
            "type": "integer",
            "format": "int64",
            "minimum": 0
          },
          {
            "name": "crop_width",
            "in": "formData",
            "description": "crop width",
            "required": false,
            "type": "integer",
            "format": "int64",
            "minimum": 50
          },
          {
            "name": "crop_height",
            "in": "formData",
            "description": "crop height",
            "required": false,
            "type": "integer",
            "format": "int64",
            "minimum": 50
          },
          {
            "name": "text",
            "in": "formData",
            "description": "text",
            "required": false,
            "type": "string"
          },
          {
            "name": "is_primary_image",
            "in": "formData",
            "description": "tags the image as the main image for the user profile, will set image_asset_id on the user_profile",
            "required": false,
            "type": "string"
          },
          {
            "name": "source",
            "in": "formData",
            "description": "source app",
            "required": true,
            "type": "string",
            "enum": [
              "THE_WILDEST"
            ]
          }
        ],
        "responses": {
          "201": {
            "description": "OK",
            "schema": {
              "$ref": "#/definitions/AssetMetaDataGetDTO"
            }
          },
          "401": {
            "description": "Unauthorized",
            "schema": {
              "$ref": "#/definitions/ProblemDetailVM"
            }
          },
          "403": {
            "description": "Forbidden",
            "schema": {
              "$ref": "#/definitions/ProblemDetailVM"
            }
          },
          "404": {
            "description": "Not Found",
            "schema": {
              "$ref": "#/definitions/ProblemDetailVM"
            }
          },
          "413": {
            "description": "Payload Too Large",
            "schema": {
              "$ref": "#/definitions/ProblemDetailVM"
            }
          },
          "500": {
            "description": "Internal error",
            "schema": {
              "$ref": "#/definitions/ProblemDetailVM"
            }
          }
        },
        "deprecated": false
      }
    },
    "/my-profile/asset/{asset_id}": {
      "get": {
        "security": [
          {
            "Bearer": []
          }
        ],
        "x-swagger-router-controller": "asset",
        "tags": [
          "asset"
        ],
        "summary": "get user profile asset",
        "operationId": "get_my_profile_asset",
        "consumes": [
          "application/json"
        ],
        "produces": [
          "image/jpeg"
        ],
        "parameters": [
          {
            "name": "asset_id",
            "in": "path",
            "description": "asset id",
            "required": true,
            "type": "string",
            "format": "uuid"
          },
          {
            "name": "variant",
            "in": "query",
            "description": "variant of image MEDIUM or SMALL",
            "required": false,
            "type": "string",
            "enum": [
              "MEDIUM",
              "SMALL"
            ]
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "schema": {}
          },
          "401": {
            "description": "Unauthorized",
            "schema": {
              "$ref": "#/definitions/ProblemDetailVM"
            }
          },
          "403": {
            "description": "Forbidden",
            "schema": {
              "$ref": "#/definitions/ProblemDetailVM"
            }
          },
          "404": {
            "description": "Not Found",
            "schema": {
              "$ref": "#/definitions/ProblemDetailVM"
            }
          },
          "500": {
            "description": "Internal error",
            "schema": {
              "$ref": "#/definitions/ProblemDetailVM"
            }
          }
        },
        "deprecated": false
      }
    },
    "/my-profile/coupons": {
      "get": {
        "security": [
          {
            "Bearer": []
          }
        ],
        "x-swagger-router-controller": "user-profile-coupons",
        "tags": [
          "user-coupons"
        ],
        "summary": "get user profile coupons",
        "operationId": "get_user_profile_coupons",
        "responses": {
          "200": {
            "description": "OK",
            "schema": {}
          },
          "401": {
            "description": "Unauthorized",
            "schema": {
              "$ref": "#/definitions/ProblemDetailVM"
            }
          },
          "403": {
            "description": "Forbidden",
            "schema": {
              "$ref": "#/definitions/ProblemDetailVM"
            }
          },
          "404": {
            "description": "Not Found",
            "schema": {
              "$ref": "#/definitions/ProblemDetailVM"
            }
          },
          "500": {
            "description": "Internal error",
            "schema": {
              "$ref": "#/definitions/ProblemDetailVM"
            }
          }
        },
        "deprecated": false
      }
    },
    "/my-profile/coupons/consumed": {
      "get": {
        "security": [
          {
            "Bearer": []
          }
        ],
        "x-swagger-router-controller": "user-profile-coupons-consumed",
        "tags": [
          "user-coupons"
        ],
        "summary": "get user profile consumed coupons",
        "operationId": "get_user_profile_coupons_consumed",
        "responses": {
          "200": {
            "description": "OK",
            "schema": {}
          },
          "401": {
            "description": "Unauthorized",
            "schema": {
              "$ref": "#/definitions/ProblemDetailVM"
            }
          },
          "403": {
            "description": "Forbidden",
            "schema": {
              "$ref": "#/definitions/ProblemDetailVM"
            }
          },
          "404": {
            "description": "Not Found",
            "schema": {
              "$ref": "#/definitions/ProblemDetailVM"
            }
          },
          "500": {
            "description": "Internal error",
            "schema": {
              "$ref": "#/definitions/ProblemDetailVM"
            }
          }
        },
        "deprecated": false
      }
    },
    "/my-profile/coupons/consumed/add": {
      "post": {
        "security": [
          {
            "Bearer": []
          }
        ],
        "x-swagger-router-controller": "user-profile-coupons-consumed",
        "tags": [
          "user-coupons"
        ],
        "summary": "add user profile consumed coupon",
        "operationId": "post_user_profile_coupons_consumed",
        "parameters": [
          {
            "in": "body",
            "name": "postConsumedCoupon",
            "description": "Data",
            "schema": {
              "type": "object",
              "additionalProperties": false,
              "required": [
                "coupon"
              ],
              "properties": {
                "coupon": {
                  "type": "string"
                }
              }
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "schema": {}
          },
          "401": {
            "description": "Unauthorized",
            "schema": {
              "$ref": "#/definitions/ProblemDetailVM"
            }
          },
          "403": {
            "description": "Forbidden",
            "schema": {
              "$ref": "#/definitions/ProblemDetailVM"
            }
          },
          "404": {
            "description": "Not Found",
            "schema": {
              "$ref": "#/definitions/ProblemDetailVM"
            }
          },
          "500": {
            "description": "Internal error",
            "schema": {
              "$ref": "#/definitions/ProblemDetailVM"
            }
          }
        },
        "deprecated": false
      }
    },
    "/my-profile/gentle-beast-modal": {
      "get": {
        "security": [
          {
            "Bearer": []
          }
        ],
        "x-swagger-router-controller": "user-profile-gentle-beast-modal",
        "tags": [
          "user-profile"
        ],
        "summary": "get user profile gentle beast modal seen status",
        "operationId": "get_user_profile_gentle_beast_modal",
        "responses": {
          "200": {
            "description": "OK",
            "schema": {
              "type": "object",
              "properties": {
                "previous_modal_seen": {
                  "type": "boolean"
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized",
            "schema": {
              "$ref": "#/definitions/ProblemDetailVM"
            }
          },
          "403": {
            "description": "Forbidden",
            "schema": {
              "$ref": "#/definitions/ProblemDetailVM"
            }
          },
          "404": {
            "description": "Not Found",
            "schema": {
              "$ref": "#/definitions/ProblemDetailVM"
            }
          },
          "500": {
            "description": "Internal error",
            "schema": {
              "$ref": "#/definitions/ProblemDetailVM"
            }
          }
        },
        "deprecated": false
      },
      "put": {
        "security": [
          {
            "Bearer": []
          }
        ],
        "x-swagger-router-controller": "user-profile-gentle-beast-modal",
        "tags": [
          "user-profile"
        ],
        "summary": "update user profile gentle beast modal seen status",
        "operationId": "put_user_profile_gentle_beast_modal",
        "parameters": [
          {
            "in": "body",
            "name": "updateGentleBeastModal",
            "description": "Data",
            "schema": {
              "type": "object",
              "additionalProperties": false,
              "required": [
                "previous_modal_seen"
              ],
              "properties": {
                "previous_modal_seen": {
                  "type": "boolean"
                }
              }
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "schema": {}
          },
          "400": {
            "description": "Bad Request",
            "schema": {
              "$ref": "#/definitions/ProblemDetailVM"
            }
          },
          "401": {
            "description": "Unauthorized",
            "schema": {
              "$ref": "#/definitions/ProblemDetailVM"
            }
          },
          "403": {
            "description": "Forbidden",
            "schema": {
              "$ref": "#/definitions/ProblemDetailVM"
            }
          },
          "404": {
            "description": "Not Found",
            "schema": {
              "$ref": "#/definitions/ProblemDetailVM"
            }
          },
          "500": {
            "description": "Internal error",
            "schema": {
              "$ref": "#/definitions/ProblemDetailVM"
            }
          }
        },
        "deprecated": false
      }
    },
    "/my-pet-profile": {
      "post": {
        "security": [
          {
            "Bearer": []
          }
        ],
        "x-swagger-router-controller": "pet-profile",
        "tags": [
          "pet-profile"
        ],
        "summary": "creates a pet-profile",
        "operationId": "post_my_pet_profile",
        "consumes": [
          "application/json"
        ],
        "produces": [
          "application/json"
        ],
        "parameters": [
          {
            "in": "body",
            "name": "petProfileDTO",
            "description": "petProfileDTO",
            "required": true,
            "schema": {
              "$ref": "#/definitions/PetProfilePostDTO"
            }
          }
        ],
        "responses": {
          "201": {
            "description": "OK",
            "schema": {
              "$ref": "#/definitions/PetProfileGetDTO"
            }
          },
          "401": {
            "description": "Unauthorized",
            "schema": {
              "$ref": "#/definitions/ProblemDetailVM"
            }
          },
          "403": {
            "description": "Forbidden",
            "schema": {
              "$ref": "#/definitions/ProblemDetailVM"
            }
          },
          "404": {
            "description": "Not Found",
            "schema": {
              "$ref": "#/definitions/ProblemDetailVM"
            }
          },
          "500": {
            "description": "Internal error",
            "schema": {
              "$ref": "#/definitions/ProblemDetailVM"
            }
          }
        },
        "deprecated": false
      },
      "put": {
        "security": [
          {
            "Bearer": []
          }
        ],
        "x-swagger-router-controller": "pet-profile",
        "tags": [
          "pet-profile"
        ],
        "summary": "creates a pet-profile",
        "operationId": "put_my_pet_profile",
        "consumes": [
          "application/json"
        ],
        "produces": [
          "application/json"
        ],
        "parameters": [
          {
            "in": "body",
            "name": "petProfileDTO",
            "description": "petProfileDTO",
            "required": true,
            "schema": {
              "type": "array",
              "items": {
                "$ref": "#/definitions/PetProfilePostDTO"
              }
            }
          }
        ],
        "responses": {
          "201": {
            "description": "OK",
            "schema": {
              "type": "array",
              "items": {
                "$ref": "#/definitions/PetProfileGetDTO"
              }
            }
          },
          "401": {
            "description": "Unauthorized",
            "schema": {
              "$ref": "#/definitions/ProblemDetailVM"
            }
          },
          "403": {
            "description": "Forbidden",
            "schema": {
              "$ref": "#/definitions/ProblemDetailVM"
            }
          },
          "404": {
            "description": "Not Found",
            "schema": {
              "$ref": "#/definitions/ProblemDetailVM"
            }
          },
          "500": {
            "description": "Internal error",
            "schema": {
              "$ref": "#/definitions/ProblemDetailVM"
            }
          }
        },
        "deprecated": false
      },
      "patch": {
        "security": [
          {
            "Bearer": []
          }
        ],
        "x-swagger-router-controller": "pet-profile",
        "tags": [
          "pet-profile"
        ],
        "summary": "updates (or creates) a pet-profile",
        "operationId": "patch_my_pet_profile",
        "consumes": [
          "application/json"
        ],
        "produces": [
          "application/json"
        ],
        "parameters": [
          {
            "in": "body",
            "name": "petProfileDTO",
            "description": "petProfileDTO",
            "required": true,
            "schema": {
              "$ref": "#/definitions/PetProfilePatchDTO"
            }
          }
        ],
        "responses": {
          "201": {
            "description": "OK",
            "schema": {
              "$ref": "#/definitions/PetProfileGetDTO"
            }
          },
          "401": {
            "description": "Unauthorized",
            "schema": {
              "$ref": "#/definitions/ProblemDetailVM"
            }
          },
          "403": {
            "description": "Forbidden",
            "schema": {
              "$ref": "#/definitions/ProblemDetailVM"
            }
          },
          "404": {
            "description": "Not Found",
            "schema": {
              "$ref": "#/definitions/ProblemDetailVM"
            }
          },
          "500": {
            "description": "Internal error",
            "schema": {
              "$ref": "#/definitions/ProblemDetailVM"
            }
          }
        },
        "deprecated": false
      },
      "get": {
        "security": [
          {
            "Bearer": []
          }
        ],
        "x-swagger-router-controller": "pet-profile",
        "tags": [
          "pet-profile"
        ],
        "summary": " gets all pet-profiles for a user",
        "operationId": "get_all_my_pet_profiles",
        "consumes": [
          "application/json"
        ],
        "produces": [
          "application/json"
        ],
        "parameters": [],
        "responses": {
          "200": {
            "description": "OK",
            "schema": {
              "type": "array",
              "items": {
                "$ref": "#/definitions/PetProfilePostDTO"
              }
            }
          },
          "401": {
            "description": "Unauthorized",
            "schema": {
              "$ref": "#/definitions/ProblemDetailVM"
            }
          },
          "403": {
            "description": "Forbidden",
            "schema": {
              "$ref": "#/definitions/ProblemDetailVM"
            }
          },
          "404": {
            "description": "Not Found",
            "schema": {
              "$ref": "#/definitions/ProblemDetailVM"
            }
          },
          "500": {
            "description": "Internal error",
            "schema": {
              "$ref": "#/definitions/ProblemDetailVM"
            }
          }
        },
        "deprecated": false
      }
    },
    "/my-pet-profile/{pet_profile_id}/subscription": {
      "get": {
        "security": [
          {
            "Bearer": []
          }
        ],
        "x-swagger-router-controller": "pet-profile",
        "tags": [
          "pet-profile-rainwalk"
        ],
        "summary": "Get Kinship Subscription",
        "operationId": "get_kinship_subscription",
        "consumes": [
          "application/json"
        ],
        "produces": [
          "application/json"
        ],
        "parameters": [
          {
            "name": "pet_profile_id",
            "in": "path",
            "description": "pet profile id",
            "required": true,
            "type": "string",
            "format": "int64"
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "schema": {
              "$ref": "#/definitions/KinshipSubscriptionDTO"
            }
          },
          "401": {
            "description": "Unauthorized",
            "schema": {
              "$ref": "#/definitions/ProblemDetailVM"
            }
          },
          "403": {
            "description": "Forbidden",
            "schema": {
              "$ref": "#/definitions/ProblemDetailVM"
            }
          },
          "404": {
            "description": "Not Found",
            "schema": {
              "$ref": "#/definitions/ProblemDetailVM"
            }
          },
          "500": {
            "description": "Internal error",
            "schema": {
              "$ref": "#/definitions/ProblemDetailVM"
            }
          }
        },
        "deprecated": false
      },
      "delete": {
        "security": [
          {
            "Bearer": []
          }
        ],
        "x-swagger-router-controller": "pet-profile",
        "tags": [
          "pet-profile-rainwalk"
        ],
        "summary": "Get Kinship Subscription",
        "operationId": "cancel_kinship_subscriptions",
        "consumes": [
          "application/json"
        ],
        "produces": [
          "application/json"
        ],
        "parameters": [
          {
            "name": "pet_profile_id",
            "in": "path",
            "description": "pet profile id",
            "required": true,
            "type": "string",
            "format": "int64"
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "schema": {
              "$ref": "#/definitions/KinshipSubscriptionDTO"
            }
          },
          "401": {
            "description": "Unauthorized",
            "schema": {
              "$ref": "#/definitions/ProblemDetailVM"
            }
          },
          "403": {
            "description": "Forbidden",
            "schema": {
              "$ref": "#/definitions/ProblemDetailVM"
            }
          },
          "404": {
            "description": "Not Found",
            "schema": {
              "$ref": "#/definitions/ProblemDetailVM"
            }
          },
          "500": {
            "description": "Internal error",
            "schema": {
              "$ref": "#/definitions/ProblemDetailVM"
            }
          }
        },
        "deprecated": false
      }
    },
    "/my-pet-profile/{pet_profile_id}/subscription/{subscription_type}": {
      "get": {
        "security": [
          {
            "Bearer": []
          }
        ],
        "x-swagger-router-controller": "pet-profile",
        "tags": [
          "pet-profile-rainwalk"
        ],
        "summary": "Get Kinship Subscription",
        "operationId": "get_kinship_subscription",
        "consumes": [
          "application/json"
        ],
        "produces": [
          "application/json"
        ],
        "parameters": [
          {
            "name": "pet_profile_id",
            "in": "path",
            "description": "pet profile id",
            "required": true,
            "type": "string",
            "format": "int64"
          },
          {
            "name": "subscription_type",
            "in": "path",
            "description": "subscription type",
            "required": true,
            "type": "string"
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "schema": {
              "$ref": "#/definitions/KinshipSubscriptionDTO"
            }
          },
          "401": {
            "description": "Unauthorized",
            "schema": {
              "$ref": "#/definitions/ProblemDetailVM"
            }
          },
          "403": {
            "description": "Forbidden",
            "schema": {
              "$ref": "#/definitions/ProblemDetailVM"
            }
          },
          "404": {
            "description": "Not Found",
            "schema": {
              "$ref": "#/definitions/ProblemDetailVM"
            }
          },
          "500": {
            "description": "Internal error",
            "schema": {
              "$ref": "#/definitions/ProblemDetailVM"
            }
          }
        },
        "deprecated": false
      },
      "delete": {
        "security": [
          {
            "Bearer": []
          }
        ],
        "x-swagger-router-controller": "pet-profile",
        "tags": [
          "pet-profile-rainwalk"
        ],
        "summary": "Get Kinship Subscription",
        "operationId": "cancel_kinship_subscriptions",
        "consumes": [
          "application/json"
        ],
        "produces": [
          "application/json"
        ],
        "parameters": [
          {
            "name": "pet_profile_id",
            "in": "path",
            "description": "pet profile id",
            "required": true,
            "type": "string",
            "format": "int64"
          },
          {
            "name": "subscription_type",
            "in": "path",
            "description": "subscription type",
            "required": true,
            "type": "string"
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "schema": {
              "$ref": "#/definitions/KinshipSubscriptionDTO"
            }
          },
          "401": {
            "description": "Unauthorized",
            "schema": {
              "$ref": "#/definitions/ProblemDetailVM"
            }
          },
          "403": {
            "description": "Forbidden",
            "schema": {
              "$ref": "#/definitions/ProblemDetailVM"
            }
          },
          "404": {
            "description": "Not Found",
            "schema": {
              "$ref": "#/definitions/ProblemDetailVM"
            }
          },
          "500": {
            "description": "Internal error",
            "schema": {
              "$ref": "#/definitions/ProblemDetailVM"
            }
          }
        },
        "deprecated": false
      }
    },
    "/my-pet-profile/{pet_profile_id}/subscription/rainwalk": {
      "get": {
        "security": [
          {
            "Bearer": []
          }
        ],
        "x-swagger-router-controller": "pet-profile",
        "tags": [
          "pet-profile-rainwalk"
        ],
        "summary": "generate rainwalk subscription link",
        "operationId": "generate_rainwalk_subscription_link",
        "consumes": [
          "application/json"
        ],
        "produces": [
          "application/json"
        ],
        "parameters": [
          {
            "name": "pet_profile_id",
            "in": "path",
            "description": "pet profile id",
            "required": true,
            "type": "string",
            "format": "int64"
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "schema": {
              "$ref": "#/definitions/RainwalkSubscriptionLinkDTO"
            }
          },
          "401": {
            "description": "Unauthorized",
            "schema": {
              "$ref": "#/definitions/ProblemDetailVM"
            }
          },
          "403": {
            "description": "Forbidden",
            "schema": {
              "$ref": "#/definitions/ProblemDetailVM"
            }
          },
          "404": {
            "description": "Not Found",
            "schema": {
              "$ref": "#/definitions/ProblemDetailVM"
            }
          },
          "500": {
            "description": "Internal error",
            "schema": {
              "$ref": "#/definitions/ProblemDetailVM"
            }
          }
        },
        "deprecated": false
      }
    },
    "/my-pet-profile/{pet_profile_id}": {
      "get": {
        "security": [
          {
            "Bearer": []
          }
        ],
        "x-swagger-router-controller": "pet-profile",
        "tags": [
          "pet-profile"
        ],
        "summary": "gets a pet-profile",
        "operationId": "get_my_pet_profile",
        "consumes": [
          "application/json"
        ],
        "produces": [
          "application/json"
        ],
        "parameters": [
          {
            "name": "pet_profile_id",
            "in": "path",
            "description": "pet id",
            "required": true,
            "type": "string"
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "schema": {
              "$ref": "#/definitions/PetProfileGetDTO"
            }
          },
          "401": {
            "description": "Unauthorized",
            "schema": {
              "$ref": "#/definitions/ProblemDetailVM"
            }
          },
          "403": {
            "description": "Forbidden",
            "schema": {
              "$ref": "#/definitions/ProblemDetailVM"
            }
          },
          "404": {
            "description": "Not Found",
            "schema": {
              "$ref": "#/definitions/ProblemDetailVM"
            }
          },
          "500": {
            "description": "Internal error",
            "schema": {
              "$ref": "#/definitions/ProblemDetailVM"
            }
          }
        },
        "deprecated": false
      },
      "delete": {
        "security": [
          {
            "Bearer": []
          }
        ],
        "x-swagger-router-controller": "pet-profile",
        "tags": [
          "pet-profile"
        ],
        "summary": "deletes a pet-profile",
        "operationId": "delete_my_pet_profile",
        "consumes": [
          "application/json"
        ],
        "produces": [
          "application/json"
        ],
        "parameters": [
          {
            "name": "pet_profile_id",
            "in": "path",
            "description": "pet id",
            "required": true,
            "type": "string"
          }
        ],
        "responses": {
          "200": {
            "description": "OK"
          },
          "401": {
            "description": "Unauthorized",
            "schema": {
              "$ref": "#/definitions/ProblemDetailVM"
            }
          },
          "403": {
            "description": "Forbidden",
            "schema": {
              "$ref": "#/definitions/ProblemDetailVM"
            }
          },
          "404": {
            "description": "Not Found",
            "schema": {
              "$ref": "#/definitions/ProblemDetailVM"
            }
          },
          "500": {
            "description": "Internal error",
            "schema": {
              "$ref": "#/definitions/ProblemDetailVM"
            }
          }
        },
        "deprecated": false
      }
    },
    "/my-pet-profile/{pet_profile_id}/todo": {
      "get": {
        "security": [
          {
            "Bearer": []
          }
        ],
        "x-swagger-router-controller": "pet-profile-todo",
        "tags": [
          "pet-profile"
        ],
        "summary": "gets all todos for a pet",
        "operationId": "get_pet_profile_todos",
        "consumes": [
          "application/json"
        ],
        "produces": [
          "application/json"
        ],
        "parameters": [
          {
            "name": "pet_profile_id",
            "in": "path",
            "description": "pet id",
            "required": true,
            "type": "string"
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "schema": {
              "type": "array",
              "items": {
                "$ref": "#/definitions/PetProfileTodoGetDTO"
              }
            }
          },
          "401": {
            "description": "Unauthorized",
            "schema": {
              "$ref": "#/definitions/ProblemDetailVM"
            }
          },
          "403": {
            "description": "Forbidden",
            "schema": {
              "$ref": "#/definitions/ProblemDetailVM"
            }
          },
          "404": {
            "description": "Not Found",
            "schema": {
              "$ref": "#/definitions/ProblemDetailVM"
            }
          },
          "500": {
            "description": "Internal error",
            "schema": {
              "$ref": "#/definitions/ProblemDetailVM"
            }
          }
        },
        "deprecated": false
      }
    },
    "/my-pet-profile/{pet_profile_id}/todo/completed-all": {
      "patch": {
        "security": [
          {
            "Bearer": []
          }
        ],
        "x-swagger-router-controller": "pet-profile-todo",
        "tags": [
          "pet-profile"
        ],
        "summary": "triggers completed all todos email",
        "operationId": "post_pet_profile_todo_completed_all",
        "consumes": [
          "application/json"
        ],
        "produces": [
          "application/json"
        ],
        "parameters": [
          {
            "name": "pet_profile_id",
            "in": "path",
            "description": "pet id",
            "required": true,
            "type": "string"
          },
          {
            "in": "body",
            "name": "empty",
            "description": "empty",
            "required": false,
            "schema": {
              "$ref": "#/definitions/Empty"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "schema": {}
          },
          "401": {
            "description": "Unauthorized",
            "schema": {
              "$ref": "#/definitions/ProblemDetailVM"
            }
          },
          "403": {
            "description": "Forbidden",
            "schema": {
              "$ref": "#/definitions/ProblemDetailVM"
            }
          },
          "404": {
            "description": "Not Found",
            "schema": {
              "$ref": "#/definitions/ProblemDetailVM"
            }
          },
          "500": {
            "description": "Internal error",
            "schema": {
              "$ref": "#/definitions/ProblemDetailVM"
            }
          }
        },
        "deprecated": false
      }
    },
    "/my-pet-profile/{pet_profile_id}/todo/{todo_id}": {
      "get": {
        "security": [
          {
            "Bearer": []
          }
        ],
        "x-swagger-router-controller": "pet-profile-todo",
        "tags": [
          "pet-profile"
        ],
        "summary": "gets an individual todo for a pet",
        "operationId": "get_pet_profile_todo",
        "consumes": [
          "application/json"
        ],
        "produces": [
          "application/json"
        ],
        "parameters": [
          {
            "name": "pet_profile_id",
            "in": "path",
            "description": "pet id",
            "required": true,
            "type": "string"
          },
          {
            "name": "todo_id",
            "in": "path",
            "description": "external todo id (not todo.id PK in our db)",
            "required": true,
            "type": "string"
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "schema": {
              "$ref": "#/definitions/PetProfileTodoGetDTO"
            }
          },
          "401": {
            "description": "Unauthorized",
            "schema": {
              "$ref": "#/definitions/ProblemDetailVM"
            }
          },
          "403": {
            "description": "Forbidden",
            "schema": {
              "$ref": "#/definitions/ProblemDetailVM"
            }
          },
          "404": {
            "description": "Not Found",
            "schema": {
              "$ref": "#/definitions/ProblemDetailVM"
            }
          },
          "500": {
            "description": "Internal error",
            "schema": {
              "$ref": "#/definitions/ProblemDetailVM"
            }
          }
        },
        "deprecated": false
      },
      "patch": {
        "security": [
          {
            "Bearer": []
          }
        ],
        "x-swagger-router-controller": "pet-profile-todo",
        "tags": [
          "pet-profile"
        ],
        "summary": "updates (or creates) an individual todo for a pet",
        "operationId": "patch_pet_profile_todo",
        "consumes": [
          "application/json"
        ],
        "produces": [
          "application/json"
        ],
        "parameters": [
          {
            "name": "pet_profile_id",
            "in": "path",
            "description": "pet id",
            "required": true,
            "type": "string"
          },
          {
            "name": "todo_id",
            "in": "path",
            "description": "todo id",
            "required": true,
            "type": "string"
          },
          {
            "in": "body",
            "name": "patchTodo",
            "description": "Data",
            "schema": {
              "type": "object",
              "additionalProperties": false,
              "required": [
                "data"
              ],
              "properties": {
                "data": {
                  "type": "object"
                },
                "status": {
                  "type": "string",
                  "enum": [
                    "CREATED",
                    "STARTED",
                    "COMPLETED"
                  ]
                }
              }
            }
          }
        ],
        "responses": {
          "201": {
            "description": "OK",
            "schema": {
              "$ref": "#/definitions/PetProfileTodoPatchDTO"
            }
          },
          "401": {
            "description": "Unauthorized",
            "schema": {
              "$ref": "#/definitions/ProblemDetailVM"
            }
          },
          "403": {
            "description": "Forbidden",
            "schema": {
              "$ref": "#/definitions/ProblemDetailVM"
            }
          },
          "404": {
            "description": "Not Found",
            "schema": {
              "$ref": "#/definitions/ProblemDetailVM"
            }
          },
          "500": {
            "description": "Internal error",
            "schema": {
              "$ref": "#/definitions/ProblemDetailVM"
            }
          }
        },
        "deprecated": false
      }
    },
    "/my-pet-profile/{pet_profile_id}/additional-info": {
      "get": {
        "security": [
          {
            "Bearer": []
          }
        ],
        "x-swagger-router-controller": "pet-profile-additional-info",
        "tags": [
          "pet-profile"
        ],
        "summary": "(SECURED)",
        "operationId": "get_all_additional_info",
        "consumes": [
          "application/json"
        ],
        "produces": [
          "application/json"
        ],
        "parameters": [
          {
            "name": "pet_profile_id",
            "in": "path",
            "description": "pet id",
            "required": true,
            "type": "string"
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "schema": {
              "type": "array",
              "items": {
                "$ref": "#/definitions/PetProfileAdditionalInfoDTO"
              }
            }
          },
          "401": {
            "description": "Unauthorized",
            "schema": {
              "$ref": "#/definitions/ProblemDetailVM"
            }
          },
          "403": {
            "description": "Forbidden",
            "schema": {
              "$ref": "#/definitions/ProblemDetailVM"
            }
          },
          "404": {
            "description": "Not Found",
            "schema": {
              "$ref": "#/definitions/ProblemDetailVM"
            }
          },
          "500": {
            "description": "Internal error",
            "schema": {
              "$ref": "#/definitions/ProblemDetailVM"
            }
          }
        },
        "deprecated": false
      }
    },
    "/my-pet-profile/{pet_profile_id}/additional-info/{domain}": {
      "get": {
        "security": [
          {
            "Bearer": []
          }
        ],
        "x-swagger-router-controller": "pet-profile-additional-info",
        "tags": [
          "pet-profile"
        ],
        "summary": "(SECURED)",
        "operationId": "get_additional_info",
        "consumes": [
          "application/json"
        ],
        "produces": [
          "application/json"
        ],
        "parameters": [
          {
            "name": "pet_profile_id",
            "in": "path",
            "description": "pet id",
            "required": true,
            "type": "string"
          },
          {
            "name": "domain",
            "in": "path",
            "description": "domain",
            "required": true,
            "type": "string"
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "schema": {
              "$ref": "#/definitions/PetProfileAdditionalInfoDTO"
            }
          },
          "401": {
            "description": "Unauthorized",
            "schema": {
              "$ref": "#/definitions/ProblemDetailVM"
            }
          },
          "403": {
            "description": "Forbidden",
            "schema": {
              "$ref": "#/definitions/ProblemDetailVM"
            }
          },
          "404": {
            "description": "Not Found",
            "schema": {
              "$ref": "#/definitions/ProblemDetailVM"
            }
          },
          "500": {
            "description": "Internal error",
            "schema": {
              "$ref": "#/definitions/ProblemDetailVM"
            }
          }
        },
        "deprecated": false
      },
      "patch": {
        "security": [
          {
            "Bearer": []
          }
        ],
        "x-swagger-router-controller": "pet-profile-additional-info",
        "tags": [
          "pet-profile"
        ],
        "summary": "(SECURED)",
        "operationId": "patch_additional_info",
        "consumes": [
          "application/json"
        ],
        "produces": [
          "application/json"
        ],
        "parameters": [
          {
            "name": "pet_profile_id",
            "in": "path",
            "description": "pet id",
            "required": true,
            "type": "string"
          },
          {
            "name": "domain",
            "in": "path",
            "description": "domain",
            "required": true,
            "type": "string",
            "enum": [
              "CARE",
              "HEALTH",
              "VET",
              "NUTRITIONCALC",
              "TODO",
              "GOTCHA"
            ]
          },
          {
            "in": "body",
            "name": "data",
            "description": "Data",
            "schema": {
              "type": "object",
              "additionalProperties": false,
              "required": [
                "data"
              ],
              "properties": {
                "data": {
                  "type": "object"
                }
              }
            }
          }
        ],
        "responses": {
          "201": {
            "description": "OK",
            "schema": {
              "$ref": "#/definitions/PetProfileAdditionalInfoDTO"
            }
          },
          "401": {
            "description": "Unauthorized",
            "schema": {
              "$ref": "#/definitions/ProblemDetailVM"
            }
          },
          "403": {
            "description": "Forbidden",
            "schema": {
              "$ref": "#/definitions/ProblemDetailVM"
            }
          },
          "404": {
            "description": "Not Found",
            "schema": {
              "$ref": "#/definitions/ProblemDetailVM"
            }
          },
          "500": {
            "description": "Internal error",
            "schema": {
              "$ref": "#/definitions/ProblemDetailVM"
            }
          }
        },
        "deprecated": false
      },
      "post": {
        "security": [
          {
            "Bearer": []
          }
        ],
        "x-swagger-router-controller": "pet-profile-additional-info",
        "tags": [
          "pet-profile"
        ],
        "summary": "(SECURED)",
        "operationId": "post_append_additional_info",
        "consumes": [
          "application/json"
        ],
        "produces": [
          "application/json"
        ],
        "parameters": [
          {
            "name": "pet_profile_id",
            "in": "path",
            "description": "pet id",
            "required": true,
            "type": "string"
          },
          {
            "name": "domain",
            "in": "path",
            "description": "domain",
            "required": true,
            "type": "string",
            "enum": [
              "CARE",
              "HEALTH",
              "VET",
              "NUTRITIONCALC",
              "EMERGENCYCONTACT",
              "TODO",
              "GOTCHA"
            ]
          },
          {
            "in": "body",
            "name": "data",
            "description": "Data",
            "schema": {
              "type": "object",
              "additionalProperties": false,
              "required": [
                "data"
              ],
              "properties": {
                "data": {
                  "type": "object"
                }
              }
            }
          }
        ],
        "responses": {
          "201": {
            "description": "OK",
            "schema": {
              "$ref": "#/definitions/PetProfileAdditionalInfoDTO"
            }
          },
          "401": {
            "description": "Unauthorized",
            "schema": {
              "$ref": "#/definitions/ProblemDetailVM"
            }
          },
          "403": {
            "description": "Forbidden",
            "schema": {
              "$ref": "#/definitions/ProblemDetailVM"
            }
          },
          "404": {
            "description": "Not Found",
            "schema": {
              "$ref": "#/definitions/ProblemDetailVM"
            }
          },
          "500": {
            "description": "Internal error",
            "schema": {
              "$ref": "#/definitions/ProblemDetailVM"
            }
          }
        },
        "deprecated": false
      }
    },
    "/my-pet-profile/{pet_profile_id}/training": {
      "get": {
        "security": [
          {
            "Bearer": []
          }
        ],
        "x-swagger-router-controller": "pet-profile-training",
        "tags": [
          "pet-profile"
        ],
        "summary": "(SECURED)",
        "operationId": "get_all_training",
        "consumes": [
          "application/json"
        ],
        "produces": [
          "application/json"
        ],
        "parameters": [
          {
            "name": "pet_profile_id",
            "in": "path",
            "description": "pet id",
            "required": true,
            "type": "string"
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "schema": {
              "type": "array",
              "items": {
                "$ref": "#/definitions/PetProfileTrainingGetDTO"
              }
            }
          },
          "401": {
            "description": "Unauthorized",
            "schema": {
              "$ref": "#/definitions/ProblemDetailVM"
            }
          },
          "403": {
            "description": "Forbidden",
            "schema": {
              "$ref": "#/definitions/ProblemDetailVM"
            }
          },
          "404": {
            "description": "Not Found",
            "schema": {
              "$ref": "#/definitions/ProblemDetailVM"
            }
          },
          "500": {
            "description": "Internal error",
            "schema": {
              "$ref": "#/definitions/ProblemDetailVM"
            }
          }
        },
        "deprecated": false
      }
    },
    "/my-pet-profile/{pet_profile_id}/training/{module}": {
      "get": {
        "security": [
          {
            "Bearer": []
          }
        ],
        "x-swagger-router-controller": "pet-profile-training",
        "tags": [
          "pet-profile"
        ],
        "summary": "(SECURED)",
        "operationId": "get_training",
        "consumes": [
          "application/json"
        ],
        "produces": [
          "application/json"
        ],
        "parameters": [
          {
            "name": "pet_profile_id",
            "in": "path",
            "description": "pet id",
            "required": true,
            "type": "string"
          },
          {
            "name": "module",
            "in": "path",
            "description": "module",
            "required": true,
            "type": "string"
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "schema": {
              "type": "array",
              "items": {
                "$ref": "#/definitions/PetProfileTrainingGetDTO"
              }
            }
          },
          "401": {
            "description": "Unauthorized",
            "schema": {
              "$ref": "#/definitions/ProblemDetailVM"
            }
          },
          "403": {
            "description": "Forbidden",
            "schema": {
              "$ref": "#/definitions/ProblemDetailVM"
            }
          },
          "404": {
            "description": "Not Found",
            "schema": {
              "$ref": "#/definitions/ProblemDetailVM"
            }
          },
          "500": {
            "description": "Internal error",
            "schema": {
              "$ref": "#/definitions/ProblemDetailVM"
            }
          }
        },
        "deprecated": false
      },
      "patch": {
        "security": [
          {
            "Bearer": []
          }
        ],
        "x-swagger-router-controller": "pet-profile-training",
        "tags": [
          "pet-profile"
        ],
        "summary": "(SECURED)",
        "operationId": "patch_training_lesson",
        "consumes": [
          "application/json"
        ],
        "produces": [
          "application/json"
        ],
        "parameters": [
          {
            "name": "pet_profile_id",
            "in": "path",
            "description": "pet id",
            "required": true,
            "type": "string"
          },
          {
            "name": "module",
            "in": "path",
            "description": "module",
            "required": true,
            "type": "string"
          },
          {
            "in": "body",
            "name": "PetProfileTrainingPatchDTO",
            "description": "PetProfileTrainingPatchDTO",
            "required": true,
            "schema": {
              "$ref": "#/definitions/PetProfileTrainingPatchDTO"
            }
          }
        ],
        "responses": {
          "201": {
            "description": "OK",
            "schema": {
              "$ref": "#/definitions/PetProfileTrainingPatchReturnDTO"
            }
          },
          "401": {
            "description": "Unauthorized",
            "schema": {
              "$ref": "#/definitions/ProblemDetailVM"
            }
          },
          "403": {
            "description": "Forbidden",
            "schema": {
              "$ref": "#/definitions/ProblemDetailVM"
            }
          },
          "404": {
            "description": "Not Found",
            "schema": {
              "$ref": "#/definitions/ProblemDetailVM"
            }
          },
          "500": {
            "description": "Internal error",
            "schema": {
              "$ref": "#/definitions/ProblemDetailVM"
            }
          }
        },
        "deprecated": false
      }
    },
    "/my-pet-profile/{pet_profile_id}/training/{module}/{lesson}": {
      "patch": {
        "security": [
          {
            "Bearer": []
          }
        ],
        "x-swagger-router-controller": "pet-profile-training",
        "tags": [
          "pet-profile"
        ],
        "summary": "(SECURED)",
        "operationId": "patch_training_lesson",
        "consumes": [
          "application/json"
        ],
        "produces": [
          "application/json"
        ],
        "parameters": [
          {
            "name": "pet_profile_id",
            "in": "path",
            "description": "pet id",
            "required": true,
            "type": "string"
          },
          {
            "name": "module",
            "in": "path",
            "description": "module",
            "required": true,
            "type": "string"
          },
          {
            "name": "lesson",
            "in": "path",
            "description": "lesson",
            "required": true,
            "type": "string"
          },
          {
            "in": "body",
            "name": "PetProfileTrainingPatchDTO",
            "description": "PetProfileTrainingPatchDTO",
            "required": true,
            "schema": {
              "$ref": "#/definitions/PetProfileTrainingPatchDTO"
            }
          }
        ],
        "responses": {
          "201": {
            "description": "OK",
            "schema": {
              "$ref": "#/definitions/PetProfileTrainingPatchReturnDTO"
            }
          },
          "401": {
            "description": "Unauthorized",
            "schema": {
              "$ref": "#/definitions/ProblemDetailVM"
            }
          },
          "403": {
            "description": "Forbidden",
            "schema": {
              "$ref": "#/definitions/ProblemDetailVM"
            }
          },
          "404": {
            "description": "Not Found",
            "schema": {
              "$ref": "#/definitions/ProblemDetailVM"
            }
          },
          "500": {
            "description": "Internal error",
            "schema": {
              "$ref": "#/definitions/ProblemDetailVM"
            }
          }
        },
        "deprecated": false
      }
    },
    "/profile/pets/picture/{pet_profile_id}": {
      "get": {
        "security": [
          {
            "Bearer": []
          }
        ],
        "x-swagger-router-controller": "asset",
        "tags": [
          "asset"
        ],
        "summary": "get pet asset",
        "operationId": "get_my_pet_profile_asset",
        "consumes": [
          "application/json"
        ],
        "produces": [
          "image/jpeg"
        ],
        "parameters": [
          {
            "name": "pet_profile_id",
            "in": "path",
            "description": "pet_profile_id",
            "required": true,
            "type": "string",
            "format": "uuid"
          },
          {
            "name": "variant",
            "in": "query",
            "description": "variant of image MEDIUM or SMALL",
            "required": false,
            "type": "string",
            "enum": [
              "MEDIUM",
              "SMALL"
            ]
          }
        ],
        "responses": {
          "201": {
            "description": "OK",
            "schema": {}
          },
          "401": {
            "description": "Unauthorized",
            "schema": {
              "$ref": "#/definitions/ProblemDetailVM"
            }
          },
          "403": {
            "description": "Forbidden",
            "schema": {
              "$ref": "#/definitions/ProblemDetailVM"
            }
          },
          "404": {
            "description": "Not Found",
            "schema": {
              "$ref": "#/definitions/ProblemDetailVM"
            }
          },
          "500": {
            "description": "Internal error",
            "schema": {
              "$ref": "#/definitions/ProblemDetailVM"
            }
          }
        },
        "deprecated": false
      },
      "put": {
        "security": [
          {
            "Bearer": []
          }
        ],
        "x-swagger-router-controller": "asset",
        "tags": [
          "asset"
        ],
        "summary": "upload pet asset",
        "operationId": "put_my_pet_profile_asset",
        "consumes": [
          "multipart/form-data"
        ],
        "produces": [
          "application/json"
        ],
        "parameters": [
          {
            "name": "pet_profile_id",
            "in": "path",
            "description": "id of pet",
            "required": true,
            "type": "string"
          },
          {
            "name": "file",
            "in": "formData",
            "description": "file",
            "required": true,
            "type": "file"
          },
          {
            "name": "crop_left_offset",
            "in": "formData",
            "description": "left offset",
            "required": false,
            "type": "integer",
            "format": "int64",
            "minimum": 0
          },
          {
            "name": "crop_top_offset",
            "in": "formData",
            "description": "top offset",
            "required": false,
            "type": "integer",
            "format": "int64",
            "minimum": 0
          },
          {
            "name": "crop_width",
            "in": "formData",
            "description": "crop width",
            "required": false,
            "type": "integer",
            "format": "int64",
            "minimum": 50
          },
          {
            "name": "crop_height",
            "in": "formData",
            "description": "crop height",
            "required": false,
            "type": "integer",
            "format": "int64",
            "minimum": 50
          },
          {
            "name": "text",
            "in": "formData",
            "description": "text",
            "required": false,
            "type": "string"
          },
          {
            "name": "is_primary_image",
            "in": "formData",
            "description": "tags the image as the main image for the pet, will set image_asset_id on the pet_profile",
            "required": false,
            "type": "string"
          },
          {
            "name": "source",
            "in": "formData",
            "description": "source app",
            "required": true,
            "type": "string",
            "enum": [
              "THE_WILDEST"
            ]
          }
        ],
        "responses": {
          "201": {
            "description": "OK",
            "schema": {
              "type": "integer"
            }
          },
          "401": {
            "description": "Unauthorized",
            "schema": {
              "$ref": "#/definitions/ProblemDetailVM"
            }
          },
          "403": {
            "description": "Forbidden",
            "schema": {
              "$ref": "#/definitions/ProblemDetailVM"
            }
          },
          "404": {
            "description": "Not Found",
            "schema": {
              "$ref": "#/definitions/ProblemDetailVM"
            }
          },
          "413": {
            "description": "Payload Too Large",
            "schema": {
              "$ref": "#/definitions/ProblemDetailVM"
            }
          },
          "500": {
            "description": "Internal error",
            "schema": {
              "$ref": "#/definitions/ProblemDetailVM"
            }
          }
        },
        "deprecated": false
      }
    },
    "/my-pet-profile/{pet_profile_id}/note": {
      "patch": {
        "security": [
          {
            "Bearer": []
          }
        ],
        "x-swagger-router-controller": "pet-profile",
        "tags": [
          "pet-profile"
        ],
        "summary": "create or update pet note",
        "operationId": "patch_my_pet_profile_note",
        "consumes": [
          "application/json"
        ],
        "produces": [
          "application/json"
        ],
        "parameters": [
          {
            "name": "pet_profile_id",
            "in": "path",
            "description": "pet id",
            "required": true,
            "type": "string"
          },
          {
            "in": "body",
            "name": "NotePatchDTO",
            "description": "NotePatchDTO",
            "required": true,
            "schema": {
              "$ref": "#/definitions/NotePatchDTO"
            }
          }
        ],
        "responses": {
          "201": {
            "description": "OK",
            "schema": {
              "$ref": "#/definitions/NotePatchDTO"
            }
          },
          "401": {
            "description": "Unauthorized",
            "schema": {
              "$ref": "#/definitions/ProblemDetailVM"
            }
          },
          "403": {
            "description": "Forbidden",
            "schema": {
              "$ref": "#/definitions/ProblemDetailVM"
            }
          },
          "404": {
            "description": "Not Found",
            "schema": {
              "$ref": "#/definitions/ProblemDetailVM"
            }
          },
          "500": {
            "description": "Internal error",
            "schema": {
              "$ref": "#/definitions/ProblemDetailVM"
            }
          }
        },
        "deprecated": false
      },
      "get": {
        "security": [
          {
            "Bearer": []
          }
        ],
        "x-swagger-router-controller": "pet-profile",
        "tags": [
          "pet-profile"
        ],
        "summary": "get all notes for a pet",
        "operationId": "get_my_pet_profile_notes",
        "consumes": [
          "application/json"
        ],
        "produces": [
          "application/json"
        ],
        "parameters": [
          {
            "name": "pet_profile_id",
            "in": "path",
            "description": "pet id",
            "required": true,
            "type": "string"
          }
        ],
        "responses": {
          "201": {
            "description": "OK",
            "schema": {
              "type": "array",
              "items": {
                "$ref": "#/definitions/NotePatchDTO"
              }
            }
          },
          "401": {
            "description": "Unauthorized",
            "schema": {
              "$ref": "#/definitions/ProblemDetailVM"
            }
          },
          "403": {
            "description": "Forbidden",
            "schema": {
              "$ref": "#/definitions/ProblemDetailVM"
            }
          },
          "404": {
            "description": "Not Found",
            "schema": {
              "$ref": "#/definitions/ProblemDetailVM"
            }
          },
          "500": {
            "description": "Internal error",
            "schema": {
              "$ref": "#/definitions/ProblemDetailVM"
            }
          }
        },
        "deprecated": false
      }
    },
    "/my-pet-profile/{pet_profile_id}/note/{note_id}": {
      "get": {
        "security": [
          {
            "Bearer": []
          }
        ],
        "x-swagger-router-controller": "pet-profile",
        "tags": [
          "pet-profile"
        ],
        "summary": "get single notes for a pet",
        "operationId": "get_my_pet_profile_note",
        "consumes": [
          "application/json"
        ],
        "produces": [
          "application/json"
        ],
        "parameters": [
          {
            "name": "pet_profile_id",
            "in": "path",
            "description": "pet id",
            "required": true,
            "type": "string"
          },
          {
            "name": "note_id",
            "in": "path",
            "description": "id of note",
            "required": true,
            "type": "string"
          }
        ],
        "responses": {
          "201": {
            "description": "OK",
            "schema": {
              "$ref": "#/definitions/NotePatchDTO"
            }
          },
          "401": {
            "description": "Unauthorized",
            "schema": {
              "$ref": "#/definitions/ProblemDetailVM"
            }
          },
          "403": {
            "description": "Forbidden",
            "schema": {
              "$ref": "#/definitions/ProblemDetailVM"
            }
          },
          "404": {
            "description": "Not Found",
            "schema": {
              "$ref": "#/definitions/ProblemDetailVM"
            }
          },
          "500": {
            "description": "Internal error",
            "schema": {
              "$ref": "#/definitions/ProblemDetailVM"
            }
          }
        },
        "deprecated": false
      }
    },
    "/my-pet-profile/{pet_profile_id}/timeline": {
      "get": {
        "security": [
          {
            "Bearer": []
          }
        ],
        "x-swagger-router-controller": "pet-profile",
        "tags": [
          "pet-profile"
        ],
        "summary": "paginates timeline for a particular pet. Starts from most recent",
        "operationId": "get_my_pet_profile_timeline",
        "consumes": [
          "application/json"
        ],
        "produces": [
          "application/json"
        ],
        "parameters": [
          {
            "name": "pet_profile_id",
            "in": "path",
            "description": "pet id",
            "required": true,
            "type": "string"
          },
          {
            "in": "query",
            "name": "page_number",
            "required": false,
            "type": "integer"
          }
        ],
        "responses": {
          "201": {
            "description": "OK",
            "schema": {
              "type": "array",
              "items": {
                "$ref": "#/definitions/TimelineEntryVM"
              }
            }
          },
          "401": {
            "description": "Unauthorized",
            "schema": {
              "$ref": "#/definitions/ProblemDetailVM"
            }
          },
          "403": {
            "description": "Forbidden",
            "schema": {
              "$ref": "#/definitions/ProblemDetailVM"
            }
          },
          "404": {
            "description": "Not Found",
            "schema": {
              "$ref": "#/definitions/ProblemDetailVM"
            }
          },
          "500": {
            "description": "Internal error",
            "schema": {
              "$ref": "#/definitions/ProblemDetailVM"
            }
          }
        },
        "deprecated": false
      }
    },
    "/ask-trainer": {
      "get": {
        "security": [
          {
            "Bearer": []
          }
        ],
        "x-security-scopes": [
          "kintopia-api-resource-server/pet-profile-ask-trainer.read-all"
        ],
        "x-swagger-router-controller": "pet-profile-ask-trainer",
        "tags": [
          "pet-profile"
        ],
        "summary": "gets all ask-trainer",
        "operationId": "get_all_ask_trainer",
        "consumes": [
          "application/json"
        ],
        "produces": [
          "application/json"
        ],
        "parameters": [],
        "responses": {
          "200": {
            "description": "OK"
          },
          "401": {
            "description": "Unauthorized"
          },
          "403": {
            "description": "Forbidden"
          },
          "404": {
            "description": "Not Found"
          },
          "500": {
            "description": "Internal error"
          }
        },
        "deprecated": false
      }
    },
    "/my-pet-profile/{pet_profile_id}/ask-trainer": {
      "post": {
        "security": [
          {
            "Bearer": []
          }
        ],
        "x-swagger-router-controller": "pet-profile-ask-trainer",
        "tags": [
          "pet-profile"
        ],
        "summary": "post to ask a trainer",
        "operationId": "post_ask_trainer",
        "consumes": [
          "application/json"
        ],
        "produces": [
          "application/json"
        ],
        "parameters": [
          {
            "name": "pet_profile_id",
            "in": "path",
            "description": "pet id",
            "required": true,
            "type": "string"
          },
          {
            "in": "body",
            "name": "PetProfileAskTrainerDTO",
            "description": "PetProfileAskTrainerDTO",
            "required": true,
            "schema": {
              "$ref": "#/definitions/PetProfileAskTrainerDTO"
            }
          }
        ],
        "responses": {
          "201": {
            "description": "OK",
            "schema": {
              "$ref": "#/definitions/SignInHistoryDTO"
            }
          },
          "401": {
            "description": "Unauthorized",
            "schema": {
              "$ref": "#/definitions/ProblemDetailVM"
            }
          },
          "403": {
            "description": "Forbidden",
            "schema": {
              "$ref": "#/definitions/ProblemDetailVM"
            }
          },
          "404": {
            "description": "Not Found",
            "schema": {
              "$ref": "#/definitions/ProblemDetailVM"
            }
          },
          "500": {
            "description": "Internal error",
            "schema": {
              "$ref": "#/definitions/ProblemDetailVM"
            }
          }
        },
        "deprecated": false
      }
    },
    "/my-pet-profile/{pet_profile_id}/health": {
      "post": {
        "security": [
          {
            "Bearer": []
          }
        ],
        "x-swagger-router-controller": "pet-profile-health",
        "tags": [
          "pet-profile"
        ],
        "summary": "create health record for pet",
        "operationId": "post_my_pet_profile_health",
        "consumes": [
          "application/json"
        ],
        "produces": [
          "application/json"
        ],
        "parameters": [
          {
            "name": "pet_profile_id",
            "in": "path",
            "description": "pet id",
            "required": true,
            "type": "string"
          },
          {
            "in": "body",
            "name": "PetProfileHealthPostDTO",
            "description": "PetProfileHealthPostDTO",
            "required": true,
            "schema": {
              "$ref": "#/definitions/PetProfileHealthPostDTO"
            }
          }
        ],
        "responses": {
          "201": {
            "description": "OK",
            "schema": {
              "$ref": "#/definitions/PetProfileHealthGetDTO"
            }
          },
          "401": {
            "description": "Unauthorized",
            "schema": {
              "$ref": "#/definitions/ProblemDetailVM"
            }
          },
          "403": {
            "description": "Forbidden",
            "schema": {
              "$ref": "#/definitions/ProblemDetailVM"
            }
          },
          "404": {
            "description": "Not Found",
            "schema": {
              "$ref": "#/definitions/ProblemDetailVM"
            }
          },
          "500": {
            "description": "Internal error",
            "schema": {
              "$ref": "#/definitions/ProblemDetailVM"
            }
          }
        },
        "deprecated": false
      },
      "get": {
        "security": [
          {
            "Bearer": []
          }
        ],
        "x-swagger-router-controller": "pet-profile-health",
        "tags": [
          "pet-profile"
        ],
        "summary": "get all health for a pet profile",
        "operationId": "get_all_my_pet_profile_health",
        "consumes": [
          "application/json"
        ],
        "produces": [
          "application/json"
        ],
        "parameters": [
          {
            "name": "pet_profile_id",
            "in": "path",
            "description": "pet id",
            "required": true,
            "type": "string"
          }
        ],
        "responses": {
          "201": {
            "description": "OK",
            "schema": {
              "type": "array",
              "items": {
                "$ref": "#/definitions/PetProfileHealthGetDTO"
              }
            }
          },
          "401": {
            "description": "Unauthorized",
            "schema": {
              "$ref": "#/definitions/ProblemDetailVM"
            }
          },
          "403": {
            "description": "Forbidden",
            "schema": {
              "$ref": "#/definitions/ProblemDetailVM"
            }
          },
          "404": {
            "description": "Not Found",
            "schema": {
              "$ref": "#/definitions/ProblemDetailVM"
            }
          },
          "500": {
            "description": "Internal error",
            "schema": {
              "$ref": "#/definitions/ProblemDetailVM"
            }
          }
        },
        "deprecated": false
      }
    },
    "/my-pet-profile/{pet_profile_id}/health/activity": {
      "get": {
        "security": [
          {
            "Bearer": []
          }
        ],
        "x-swagger-router-controller": "pet-profile-kinship-health",
        "tags": [
          "pet-profile"
        ],
        "summary": "get pet health breed info from whistle",
        "operationId": "get_my_pet_profile_health_activity",
        "consumes": [
          "application/json"
        ],
        "produces": [
          "application/json"
        ],
        "parameters": [
          {
            "name": "pet_profile_id",
            "in": "path",
            "description": "pet id",
            "required": true,
            "type": "string"
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "schema": {
              "type": "object"
            }
          },
          "401": {
            "description": "Unauthorized",
            "schema": {
              "$ref": "#/definitions/ProblemDetailVM"
            }
          },
          "403": {
            "description": "Forbidden",
            "schema": {
              "$ref": "#/definitions/ProblemDetailVM"
            }
          },
          "404": {
            "description": "Not Found",
            "schema": {
              "$ref": "#/definitions/ProblemDetailVM"
            }
          },
          "500": {
            "description": "Internal error",
            "schema": {
              "$ref": "#/definitions/ProblemDetailVM"
            }
          }
        },
        "deprecated": false
      }
    },
    "/my-pet-profile/{pet_profile_id}/health/breed": {
      "get": {
        "security": [
          {
            "Bearer": []
          }
        ],
        "x-swagger-router-controller": "pet-profile-kinship-health",
        "tags": [
          "pet-profile"
        ],
        "summary": "get pet health breed info from wisdom",
        "operationId": "get_my_pet_profile_health_breed",
        "consumes": [
          "application/json"
        ],
        "produces": [
          "application/json"
        ],
        "parameters": [
          {
            "name": "pet_profile_id",
            "in": "path",
            "description": "pet id",
            "required": true,
            "type": "string"
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "schema": {
              "type": "object"
            }
          },
          "401": {
            "description": "Unauthorized",
            "schema": {
              "$ref": "#/definitions/ProblemDetailVM"
            }
          },
          "403": {
            "description": "Forbidden",
            "schema": {
              "$ref": "#/definitions/ProblemDetailVM"
            }
          },
          "404": {
            "description": "Not Found",
            "schema": {
              "$ref": "#/definitions/ProblemDetailVM"
            }
          },
          "500": {
            "description": "Internal error",
            "schema": {
              "$ref": "#/definitions/ProblemDetailVM"
            }
          }
        },
        "deprecated": false
      }
    },
    "/my-pet-profile/{pet_profile_id}/health/{pet_health_id}": {
      "patch": {
        "security": [
          {
            "Bearer": []
          }
        ],
        "x-swagger-router-controller": "pet-profile-health",
        "tags": [
          "pet-profile"
        ],
        "summary": "create health record for pet",
        "operationId": "patch_my_pet_profile_health",
        "consumes": [
          "application/json"
        ],
        "produces": [
          "application/json"
        ],
        "parameters": [
          {
            "name": "pet_profile_id",
            "in": "path",
            "description": "pet id",
            "required": true,
            "type": "string"
          },
          {
            "name": "pet_health_id",
            "in": "path",
            "description": "pet health id",
            "required": true,
            "type": "string"
          },
          {
            "in": "body",
            "name": "PetProfileHealthPostDTO",
            "description": "PetProfileHealthPostDTO",
            "required": true,
            "schema": {
              "$ref": "#/definitions/PetProfileHealthPostDTO"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "schema": {
              "$ref": "#/definitions/PetProfileHealthGetDTO"
            }
          },
          "401": {
            "description": "Unauthorized",
            "schema": {
              "$ref": "#/definitions/ProblemDetailVM"
            }
          },
          "403": {
            "description": "Forbidden",
            "schema": {
              "$ref": "#/definitions/ProblemDetailVM"
            }
          },
          "404": {
            "description": "Not Found",
            "schema": {
              "$ref": "#/definitions/ProblemDetailVM"
            }
          },
          "500": {
            "description": "Internal error",
            "schema": {
              "$ref": "#/definitions/ProblemDetailVM"
            }
          }
        },
        "deprecated": false
      },
      "delete": {
        "security": [
          {
            "Bearer": []
          }
        ],
        "x-swagger-router-controller": "pet-profile-health",
        "tags": [
          "pet-profile"
        ],
        "summary": "create health record for pet",
        "operationId": "delete_my_pet_profile_health",
        "consumes": [
          "application/json"
        ],
        "produces": [
          "application/json"
        ],
        "parameters": [
          {
            "name": "pet_profile_id",
            "in": "path",
            "description": "pet id",
            "required": true,
            "type": "string"
          },
          {
            "name": "pet_health_id",
            "in": "path",
            "description": "pet health id",
            "required": true,
            "type": "string"
          }
        ],
        "responses": {
          "200": {
            "description": "OK"
          },
          "401": {
            "description": "Unauthorized",
            "schema": {
              "$ref": "#/definitions/ProblemDetailVM"
            }
          },
          "403": {
            "description": "Forbidden",
            "schema": {
              "$ref": "#/definitions/ProblemDetailVM"
            }
          },
          "404": {
            "description": "Not Found",
            "schema": {
              "$ref": "#/definitions/ProblemDetailVM"
            }
          },
          "500": {
            "description": "Internal error",
            "schema": {
              "$ref": "#/definitions/ProblemDetailVM"
            }
          }
        },
        "deprecated": false
      }
    },
    "/admin/user-profile/": {
      "get": {
        "security": [
          {
            "Bearer": []
          }
        ],
        "x-swagger-router-controller": "admin",
        "operationId": "get_user_profiles",
        "x-security-scopes": [],
        "tags": [
          "admin"
        ],
        "summary": "get a list of user profiles",
        "consumes": [
          "application/json"
        ],
        "produces": [
          "application/json"
        ],
        "parameters": [
          {
            "name": "page",
            "in": "query",
            "description": "page number",
            "type": "number"
          },
          {
            "name": "pageSize",
            "in": "query",
            "description": "page length",
            "type": "number"
          },
          {
            "name": "email",
            "in": "query",
            "description": "email matching",
            "type": "string"
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "schema": {
              "$ref": "#/definitions/AdminUserGetResponseDTO"
            }
          },
          "401": {
            "description": "Unauthorized",
            "schema": {
              "$ref": "#/definitions/ProblemDetailVM"
            }
          },
          "403": {
            "description": "Forbidden",
            "schema": {
              "$ref": "#/definitions/ProblemDetailVM"
            }
          },
          "404": {
            "description": "Not Found",
            "schema": {
              "$ref": "#/definitions/ProblemDetailVM"
            }
          },
          "500": {
            "description": "Internal error",
            "schema": {
              "$ref": "#/definitions/ProblemDetailVM"
            }
          }
        },
        "deprecated": false
      }
    },
    "/admin/user-profile/{id}": {
      "get": {
        "security": [
          {
            "Bearer": []
          }
        ],
        "x-swagger-router-controller": "admin",
        "operationId": "get_user_details",
        "x-security-scopes": [],
        "tags": [
          "admin"
        ],
        "summary": "get a list of user profiles",
        "consumes": [
          "application/json"
        ],
        "produces": [
          "application/json"
        ],
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "description": "user profile id",
            "required": true,
            "type": "string"
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "schema": {
              "$ref": "#/definitions/AdminUserDetailsGetResponseDTO"
            }
          },
          "401": {
            "description": "Unauthorized",
            "schema": {
              "$ref": "#/definitions/ProblemDetailVM"
            }
          },
          "403": {
            "description": "Forbidden",
            "schema": {
              "$ref": "#/definitions/ProblemDetailVM"
            }
          },
          "404": {
            "description": "Not Found",
            "schema": {
              "$ref": "#/definitions/ProblemDetailVM"
            }
          },
          "500": {
            "description": "Internal error",
            "schema": {
              "$ref": "#/definitions/ProblemDetailVM"
            }
          }
        },
        "deprecated": false
      }
    },
    "/admin/pet-profile/": {
      "get": {
        "security": [
          {
            "Bearer": []
          }
        ],
        "x-swagger-router-controller": "admin",
        "operationId": "get_pet_profiles",
        "x-security-scopes": [],
        "tags": [
          "admin"
        ],
        "summary": "get a list of pet profiles",
        "consumes": [
          "application/json"
        ],
        "produces": [
          "application/json"
        ],
        "parameters": [
          {
            "name": "page",
            "in": "query",
            "description": "page number",
            "type": "number"
          },
          {
            "name": "pageSize",
            "in": "query",
            "description": "page length",
            "type": "number"
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "schema": {
              "$ref": "#/definitions/AdminPetGetResponseDTO"
            }
          },
          "401": {
            "description": "Unauthorized",
            "schema": {
              "$ref": "#/definitions/ProblemDetailVM"
            }
          },
          "403": {
            "description": "Forbidden",
            "schema": {
              "$ref": "#/definitions/ProblemDetailVM"
            }
          },
          "404": {
            "description": "Not Found",
            "schema": {
              "$ref": "#/definitions/ProblemDetailVM"
            }
          },
          "500": {
            "description": "Internal error",
            "schema": {
              "$ref": "#/definitions/ProblemDetailVM"
            }
          }
        },
        "deprecated": false
      }
    },
    "/admin/pet-profile/{pet_profile_id}": {
      "delete": {
        "security": [
          {
            "Bearer": []
          }
        ],
        "x-swagger-router-controller": "admin",
        "operationId": "delete_pet_profile_by_admin",
        "x-security-scopes": [],
        "tags": [
          "admin"
        ],
        "summary": "delete a pet profile",
        "consumes": [
          "application/json"
        ],
        "produces": [
          "application/json"
        ],
        "parameters": [
          {
            "name": "pet_profile_id",
            "in": "path",
            "description": "pet id",
            "required": true,
            "type": "string"
          }
        ],
        "responses": {
          "200": {
            "description": "OK"
          },
          "401": {
            "description": "Unauthorized",
            "schema": {
              "$ref": "#/definitions/ProblemDetailVM"
            }
          },
          "403": {
            "description": "Forbidden",
            "schema": {
              "$ref": "#/definitions/ProblemDetailVM"
            }
          },
          "404": {
            "description": "Not Found",
            "schema": {
              "$ref": "#/definitions/ProblemDetailVM"
            }
          },
          "500": {
            "description": "Internal error",
            "schema": {
              "$ref": "#/definitions/ProblemDetailVM"
            }
          }
        },
        "deprecated": false
      }
    },
    "/stripe/promo/{code}": {
      "get": {
        "security": [
          {
            "Bearer": []
          }
        ],
        "x-swagger-router-controller": "payment",
        "tags": [
          "payment"
        ],
        "summary": "Get details about a promo code",
        "operationId": "get_promo_details",
        "consumes": [
          "application/json"
        ],
        "produces": [
          "application/json"
        ],
        "parameters": [
          {
            "name": "code",
            "in": "path",
            "description": "promo code",
            "required": true,
            "type": "string"
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "schema": {
              "$ref": "#/definitions/PromoGetResponseDTO"
            }
          },
          "401": {
            "description": "Unauthorized",
            "schema": {
              "$ref": "#/definitions/ProblemDetailVM"
            }
          },
          "403": {
            "description": "Forbidden",
            "schema": {
              "$ref": "#/definitions/ProblemDetailVM"
            }
          },
          "404": {
            "description": "Not Found",
            "schema": {
              "$ref": "#/definitions/ProblemDetailVM"
            }
          },
          "500": {
            "description": "Internal error",
            "schema": {
              "$ref": "#/definitions/ProblemDetailVM"
            }
          }
        },
        "deprecated": false
      }
    },
    "/stripe/customer-portal": {
      "post": {
        "security": [
          {
            "Bearer": []
          }
        ],
        "x-swagger-router-controller": "subscription",
        "tags": [
          "subscription"
        ],
        "summary": "Create a subscription",
        "operationId": "create_customer_portal_session",
        "parameters": [
          {
            "name": "body",
            "in": "body",
            "schema": {
              "$ref": "#/definitions/CreateCustomerPortalSessionBody"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "schema": {
              "$ref": "#/definitions/CreatePortalSessionResponseDTO"
            }
          },
          "401": {
            "description": "Unauthorized",
            "schema": {
              "$ref": "#/definitions/ProblemDetailVM"
            }
          },
          "403": {
            "description": "Forbidden",
            "schema": {
              "$ref": "#/definitions/ProblemDetailVM"
            }
          },
          "404": {
            "description": "Not Found",
            "schema": {
              "$ref": "#/definitions/ProblemDetailVM"
            }
          },
          "500": {
            "description": "Internal error",
            "schema": {
              "$ref": "#/definitions/ProblemDetailVM"
            }
          }
        }
      }
    },
    "/my-payment-profile/": {
      "get": {
        "security": [
          {
            "Bearer": []
          }
        ],
        "x-swagger-router-controller": "subscription",
        "tags": [
          "subscription"
        ],
        "summary": "Get details about a subscription",
        "operationId": "get_subscription",
        "consumes": [
          "application/json"
        ],
        "produces": [
          "application/json"
        ],
        "parameters": [],
        "responses": {
          "200": {
            "description": "OK",
            "schema": {
              "$ref": "#/definitions/SubscriptionGetResponseDTO"
            }
          },
          "401": {
            "description": "Unauthorized",
            "schema": {
              "$ref": "#/definitions/ProblemDetailVM"
            }
          },
          "403": {
            "description": "Forbidden",
            "schema": {
              "$ref": "#/definitions/ProblemDetailVM"
            }
          },
          "404": {
            "description": "Not Found",
            "schema": {
              "$ref": "#/definitions/ProblemDetailVM"
            }
          },
          "500": {
            "description": "Internal error",
            "schema": {
              "$ref": "#/definitions/ProblemDetailVM"
            }
          }
        },
        "deprecated": false
      }
    },
    "/stripe/paymentMethods": {
      "get": {
        "security": [
          {
            "Bearer": []
          }
        ],
        "x-swagger-router-controller": "subscription",
        "tags": [
          "subscription"
        ],
        "summary": "Get payment methods",
        "operationId": "get_payment_methods",
        "consumes": [
          "application/json"
        ],
        "produces": [
          "application/json"
        ],
        "parameters": [],
        "responses": {
          "200": {
            "description": "OK",
            "schema": {
              "$ref": "#/definitions/SubscriptionGetResponseDTO"
            }
          },
          "401": {
            "description": "Unauthorized",
            "schema": {
              "$ref": "#/definitions/ProblemDetailVM"
            }
          },
          "403": {
            "description": "Forbidden",
            "schema": {
              "$ref": "#/definitions/ProblemDetailVM"
            }
          },
          "404": {
            "description": "Not Found",
            "schema": {
              "$ref": "#/definitions/ProblemDetailVM"
            }
          },
          "500": {
            "description": "Internal error",
            "schema": {
              "$ref": "#/definitions/ProblemDetailVM"
            }
          }
        },
        "deprecated": false
      }
    },
    "/my-subscription": {
      "get": {
        "security": [
          {
            "Bearer": []
          }
        ],
        "x-swagger-router-controller": "kinship",
        "tags": [
          "subscription",
          "kinship"
        ],
        "summary": "Get details about user subscription",
        "operationId": "my_subscription",
        "consumes": [
          "application/json"
        ],
        "produces": [
          "application/json"
        ],
        "parameters": [],
        "responses": {
          "200": {
            "description": "OK",
            "schema": {
              "$ref": "#/definitions/SubscriptionGetResponseDTO"
            }
          },
          "401": {
            "description": "Unauthorized",
            "schema": {
              "$ref": "#/definitions/ProblemDetailVM"
            }
          },
          "403": {
            "description": "Forbidden",
            "schema": {
              "$ref": "#/definitions/ProblemDetailVM"
            }
          },
          "404": {
            "description": "Not Found",
            "schema": {
              "$ref": "#/definitions/ProblemDetailVM"
            }
          },
          "500": {
            "description": "Internal error",
            "schema": {
              "$ref": "#/definitions/ProblemDetailVM"
            }
          }
        },
        "deprecated": false
      }
    },
    "/stripe/subscription": {
      "get": {
        "security": [
          {
            "Bearer": []
          }
        ],
        "x-swagger-router-controller": "subscription",
        "tags": [
          "subscription",
          "kinship"
        ],
        "summary": "Get details about stripe user subscription",
        "operationId": "get_active_subscription",
        "consumes": [
          "application/json"
        ],
        "produces": [
          "application/json"
        ],
        "parameters": [],
        "responses": {
          "200": {
            "description": "OK",
            "schema": {
              "$ref": "#/definitions/SubscriptionGetResponseDTO"
            }
          },
          "401": {
            "description": "Unauthorized",
            "schema": {
              "$ref": "#/definitions/ProblemDetailVM"
            }
          },
          "403": {
            "description": "Forbidden",
            "schema": {
              "$ref": "#/definitions/ProblemDetailVM"
            }
          },
          "404": {
            "description": "Not Found",
            "schema": {
              "$ref": "#/definitions/ProblemDetailVM"
            }
          },
          "500": {
            "description": "Internal error",
            "schema": {
              "$ref": "#/definitions/ProblemDetailVM"
            }
          }
        },
        "deprecated": false
      },
      "post": {
        "security": [
          {
            "Bearer": []
          }
        ],
        "x-swagger-router-controller": "subscription",
        "tags": [
          "subscription"
        ],
        "summary": "Create a subscription",
        "operationId": "create_subscription",
        "consumes": [
          "application/json"
        ],
        "produces": [
          "application/json"
        ],
        "parameters": [
          {
            "name": "body",
            "in": "body",
            "schema": {
              "$ref": "#/definitions/CreateSubscriptionBody"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "schema": {
              "$ref": "#/definitions/SubscriptionPostResponseDTO"
            }
          },
          "401": {
            "description": "Unauthorized",
            "schema": {
              "$ref": "#/definitions/ProblemDetailVM"
            }
          },
          "403": {
            "description": "Forbidden",
            "schema": {
              "$ref": "#/definitions/ProblemDetailVM"
            }
          },
          "404": {
            "description": "Not Found",
            "schema": {
              "$ref": "#/definitions/ProblemDetailVM"
            }
          },
          "500": {
            "description": "Internal error",
            "schema": {
              "$ref": "#/definitions/ProblemDetailVM"
            }
          }
        },
        "deprecated": false
      },
      "patch": {
        "security": [
          {
            "Bearer": []
          }
        ],
        "x-swagger-router-controller": "subscription",
        "tags": [
          "subscription"
        ],
        "summary": "Update a subscription",
        "operationId": "update_subscription",
        "consumes": [
          "application/json"
        ],
        "produces": [
          "application/json"
        ],
        "parameters": [
          {
            "name": "body",
            "in": "body",
            "schema": {
              "$ref": "#/definitions/CreateSubscriptionBody"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "schema": {
              "$ref": "#/definitions/SubscriptionPatchResponseDTO"
            }
          },
          "401": {
            "description": "Unauthorized",
            "schema": {
              "$ref": "#/definitions/ProblemDetailVM"
            }
          },
          "403": {
            "description": "Forbidden",
            "schema": {
              "$ref": "#/definitions/ProblemDetailVM"
            }
          },
          "404": {
            "description": "Not Found",
            "schema": {
              "$ref": "#/definitions/ProblemDetailVM"
            }
          },
          "500": {
            "description": "Internal error",
            "schema": {
              "$ref": "#/definitions/ProblemDetailVM"
            }
          }
        },
        "deprecated": false
      }
    },
    "/stripe/trial": {
      "post": {
        "security": [
          {
            "Bearer": []
          }
        ],
        "x-swagger-router-controller": "subscription",
        "tags": [
          "subscription"
        ],
        "summary": "Create a trial subscription",
        "operationId": "create_trial",
        "consumes": [
          "application/json"
        ],
        "produces": [
          "application/json"
        ],
        "parameters": [
          {
            "name": "body",
            "in": "body",
            "schema": {
              "$ref": "#/definitions/CreateTrialBody"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "schema": {
              "$ref": "#/definitions/SubscriptionPostResponseDTO"
            }
          },
          "401": {
            "description": "Unauthorized",
            "schema": {
              "$ref": "#/definitions/ProblemDetailVM"
            }
          },
          "403": {
            "description": "Forbidden",
            "schema": {
              "$ref": "#/definitions/ProblemDetailVM"
            }
          },
          "404": {
            "description": "Not Found",
            "schema": {
              "$ref": "#/definitions/ProblemDetailVM"
            }
          },
          "500": {
            "description": "Internal error",
            "schema": {
              "$ref": "#/definitions/ProblemDetailVM"
            }
          }
        },
        "deprecated": false
      }
    },
    "/my-subscription/reactivate": {
      "patch": {
        "security": [
          {
            "Bearer": []
          }
        ],
        "x-swagger-router-controller": "kinship",
        "tags": [
          "subscription",
          "kinship"
        ],
        "summary": "Reactivate user subscription",
        "operationId": "reactivate_subscription",
        "consumes": [
          "application/json"
        ],
        "produces": [
          "application/json"
        ],
        "parameters": [],
        "responses": {
          "200": {
            "description": "OK",
            "schema": {
              "$ref": "#/definitions/SubscriptionGetResponseDTO"
            }
          },
          "304": {
            "description": "Not Modified",
            "schema": {
              "$ref": "#/definitions/Empty"
            }
          },
          "401": {
            "description": "Unauthorized",
            "schema": {
              "$ref": "#/definitions/ProblemDetailVM"
            }
          },
          "403": {
            "description": "Forbidden",
            "schema": {
              "$ref": "#/definitions/ProblemDetailVM"
            }
          },
          "404": {
            "description": "Not Found",
            "schema": {
              "$ref": "#/definitions/ProblemDetailVM"
            }
          },
          "500": {
            "description": "Internal error",
            "schema": {
              "$ref": "#/definitions/ProblemDetailVM"
            }
          }
        },
        "deprecated": false
      }
    },
    "/stripe/clientSecret/": {
      "get": {
        "security": [
          {
            "Bearer": []
          }
        ],
        "x-swagger-router-controller": "subscription",
        "tags": [
          "subscription"
        ],
        "summary": "Create a stripe customer",
        "operationId": "create_setup_intent",
        "consumes": [
          "application/json"
        ],
        "produces": [
          "application/json"
        ],
        "parameters": [],
        "responses": {
          "200": {
            "description": "OK",
            "schema": {
              "$ref": "#/definitions/SubscriptionCustomerPostResponseDTO"
            }
          },
          "401": {
            "description": "Unauthorized",
            "schema": {
              "$ref": "#/definitions/ProblemDetailVM"
            }
          },
          "403": {
            "description": "Forbidden",
            "schema": {
              "$ref": "#/definitions/ProblemDetailVM"
            }
          },
          "404": {
            "description": "Not Found",
            "schema": {
              "$ref": "#/definitions/ProblemDetailVM"
            }
          },
          "500": {
            "description": "Internal error",
            "schema": {
              "$ref": "#/definitions/ProblemDetailVM"
            }
          }
        },
        "deprecated": false
      }
    },
    "/stripe/customer": {
      "get": {
        "security": [
          {
            "Bearer": []
          }
        ],
        "x-swagger-router-controller": "subscription",
        "tags": [
          "subscription"
        ],
        "summary": "Get a stripe customer",
        "operationId": "get_stripe_customer",
        "consumes": [
          "application/json"
        ],
        "produces": [
          "application/json"
        ],
        "parameters": [],
        "responses": {
          "200": {
            "description": "OK",
            "schema": {
              "$ref": "#/definitions/CustomerGetResponseDTO"
            }
          },
          "401": {
            "description": "Unauthorized",
            "schema": {
              "$ref": "#/definitions/ProblemDetailVM"
            }
          },
          "403": {
            "description": "Forbidden",
            "schema": {
              "$ref": "#/definitions/ProblemDetailVM"
            }
          },
          "404": {
            "description": "Not Found",
            "schema": {
              "$ref": "#/definitions/ProblemDetailVM"
            }
          },
          "500": {
            "description": "Internal error",
            "schema": {
              "$ref": "#/definitions/ProblemDetailVM"
            }
          }
        },
        "deprecated": false
      },
      "post": {
        "security": [
          {
            "Bearer": []
          }
        ],
        "x-swagger-router-controller": "subscription",
        "tags": [
          "subscription"
        ],
        "summary": "Create a stripe customer",
        "operationId": "create_stripe_customer",
        "consumes": [
          "application/json"
        ],
        "produces": [
          "application/json"
        ],
        "parameters": [
          {
            "name": "body",
            "in": "body",
            "schema": {
              "$ref": "#/definitions/CreateSubscriptionCustomerBody"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "schema": {
              "$ref": "#/definitions/SubscriptionCustomerPostResponseDTO"
            }
          },
          "401": {
            "description": "Unauthorized",
            "schema": {
              "$ref": "#/definitions/ProblemDetailVM"
            }
          },
          "403": {
            "description": "Forbidden",
            "schema": {
              "$ref": "#/definitions/ProblemDetailVM"
            }
          },
          "404": {
            "description": "Not Found",
            "schema": {
              "$ref": "#/definitions/ProblemDetailVM"
            }
          },
          "500": {
            "description": "Internal error",
            "schema": {
              "$ref": "#/definitions/ProblemDetailVM"
            }
          }
        },
        "deprecated": false
      },
      "patch": {
        "security": [
          {
            "Bearer": []
          }
        ],
        "x-swagger-router-controller": "subscription",
        "tags": [
          "subscription"
        ],
        "summary": "Update a stripe customer",
        "operationId": "update_stripe_customer",
        "consumes": [
          "application/json"
        ],
        "produces": [
          "application/json"
        ],
        "parameters": [],
        "responses": {
          "200": {
            "description": "OK",
            "schema": {
              "$ref": "#/definitions/SubscriptionCustomerPatchResponseDTO"
            }
          },
          "401": {
            "description": "Unauthorized",
            "schema": {
              "$ref": "#/definitions/ProblemDetailVM"
            }
          },
          "403": {
            "description": "Forbidden",
            "schema": {
              "$ref": "#/definitions/ProblemDetailVM"
            }
          },
          "404": {
            "description": "Not Found",
            "schema": {
              "$ref": "#/definitions/ProblemDetailVM"
            }
          },
          "500": {
            "description": "Internal error",
            "schema": {
              "$ref": "#/definitions/ProblemDetailVM"
            }
          }
        },
        "deprecated": false
      }
    },
    "/external/vetinsight": {
      "get": {
        "security": [
          {
            "Bearer": []
          }
        ],
        "x-swagger-router-controller": "vetinsight",
        "tags": [
          "external"
        ],
        "summary": "get vet insight token",
        "operationId": "get_auth_token_for_user",
        "consumes": [
          "application/json"
        ],
        "produces": [
          "application/json"
        ],
        "parameters": [],
        "responses": {
          "200": {
            "description": "OK",
            "schema": {
              "$ref": "#/definitions/VetinsightGetDTO"
            }
          },
          "401": {
            "description": "Unauthorized",
            "schema": {
              "$ref": "#/definitions/ProblemDetailVM"
            }
          },
          "403": {
            "description": "Forbidden",
            "schema": {
              "$ref": "#/definitions/ProblemDetailVM"
            }
          },
          "404": {
            "description": "Not Found",
            "schema": {
              "$ref": "#/definitions/ProblemDetailVM"
            }
          },
          "500": {
            "description": "Internal error",
            "schema": {
              "$ref": "#/definitions/ProblemDetailVM"
            }
          }
        },
        "deprecated": false
      }
    },
    "/external/easypost/listener": {
      "post": {
        "security": [
          {
            "Bearer": []
          }
        ],
        "x-swagger-router-controller": "easypost",
        "x-security-scopes": [
          "easypost_webhook"
        ],
        "tags": [
          "external"
        ],
        "summary": "listener for easypost subscription webhook",
        "operationId": "listen",
        "consumes": [
          "application/json"
        ],
        "produces": [
          "application/json"
        ],
        "parameters": [],
        "responses": {
          "200": {
            "description": "OK",
            "schema": {
              "$ref": "#/definitions/Empty"
            }
          },
          "401": {
            "description": "Unauthorized",
            "schema": {
              "$ref": "#/definitions/ProblemDetailVM"
            }
          },
          "403": {
            "description": "Forbidden",
            "schema": {
              "$ref": "#/definitions/ProblemDetailVM"
            }
          },
          "404": {
            "description": "Not Found",
            "schema": {
              "$ref": "#/definitions/ProblemDetailVM"
            }
          },
          "500": {
            "description": "Internal error",
            "schema": {
              "$ref": "#/definitions/ProblemDetailVM"
            }
          }
        },
        "deprecated": false
      }
    },
    "/external/stripe/listener": {
      "post": {
        "security": [
          {
            "Bearer": []
          }
        ],
        "x-swagger-router-controller": "stripe",
        "x-security-scopes": [
          "stripe_webhook"
        ],
        "tags": [
          "external"
        ],
        "summary": "listener for stripe webhook",
        "operationId": "listen",
        "consumes": [
          "application/json"
        ],
        "produces": [
          "application/json"
        ],
        "parameters": [],
        "responses": {
          "200": {
            "description": "OK",
            "schema": {
              "$ref": "#/definitions/Empty"
            }
          },
          "401": {
            "description": "Unauthorized",
            "schema": {
              "$ref": "#/definitions/ProblemDetailVM"
            }
          },
          "403": {
            "description": "Forbidden",
            "schema": {
              "$ref": "#/definitions/ProblemDetailVM"
            }
          },
          "404": {
            "description": "Not Found",
            "schema": {
              "$ref": "#/definitions/ProblemDetailVM"
            }
          },
          "500": {
            "description": "Internal error",
            "schema": {
              "$ref": "#/definitions/ProblemDetailVM"
            }
          }
        },
        "deprecated": false
      }
    },
    "/external/iterable/listener": {
      "post": {
        "x-swagger-router-controller": "iterable-webhook",
        "tags": [
          "external"
        ],
        "summary": "listener for Iterable webhook",
        "operationId": "listen",
        "consumes": [
          "application/json"
        ],
        "produces": [
          "application/json"
        ],
        "parameters": [
          {
            "in": "body",
            "name": "iterableWebhook",
            "description": "iterableWebhook",
            "required": true,
            "schema": {
              "$ref": "#/definitions/IterableWebhook"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "schema": {
              "$ref": "#/definitions/Empty"
            }
          },
          "401": {
            "description": "Unauthorized",
            "schema": {
              "$ref": "#/definitions/ProblemDetailVM"
            }
          },
          "403": {
            "description": "Forbidden",
            "schema": {
              "$ref": "#/definitions/ProblemDetailVM"
            }
          },
          "404": {
            "description": "Not Found",
            "schema": {
              "$ref": "#/definitions/ProblemDetailVM"
            }
          },
          "500": {
            "description": "Internal error",
            "schema": {
              "$ref": "#/definitions/ProblemDetailVM"
            }
          }
        },
        "deprecated": false
      }
    },
    "/external/kinship/subscription/listener": {
      "post": {
        "security": [
          {
            "Bearer": []
          }
        ],
        "x-swagger-router-controller": "kinship",
        "x-security-scopes": [
          "kinship_webhook"
        ],
        "tags": [
          "external"
        ],
        "summary": "listener for kinship subscription webhook",
        "operationId": "subscription_listen",
        "consumes": [
          "application/json"
        ],
        "produces": [
          "application/json"
        ],
        "parameters": [],
        "responses": {
          "200": {
            "description": "OK",
            "schema": {
              "$ref": "#/definitions/Empty"
            }
          },
          "401": {
            "description": "Unauthorized",
            "schema": {
              "$ref": "#/definitions/ProblemDetailVM"
            }
          },
          "403": {
            "description": "Forbidden",
            "schema": {
              "$ref": "#/definitions/ProblemDetailVM"
            }
          },
          "404": {
            "description": "Not Found",
            "schema": {
              "$ref": "#/definitions/ProblemDetailVM"
            }
          },
          "500": {
            "description": "Internal error",
            "schema": {
              "$ref": "#/definitions/ProblemDetailVM"
            }
          }
        },
        "deprecated": false
      }
    },
    "/external/okta/listener": {
      "get": {
        "security": [
          {
            "Bearer": []
          }
        ],
        "x-swagger-router-controller": "okta",
        "x-security-scopes": [
          "okta_webhook"
        ],
        "tags": [
          "external"
        ],
        "summary": "verify listener for okta webhook",
        "operationId": "verify",
        "consumes": [
          "application/json"
        ],
        "produces": [
          "application/json"
        ],
        "parameters": [],
        "responses": {
          "200": {
            "description": "OK",
            "schema": {
              "$ref": "#/definitions/Empty"
            }
          },
          "401": {
            "description": "Unauthorized",
            "schema": {
              "$ref": "#/definitions/ProblemDetailVM"
            }
          },
          "403": {
            "description": "Forbidden",
            "schema": {
              "$ref": "#/definitions/ProblemDetailVM"
            }
          },
          "404": {
            "description": "Not Found",
            "schema": {
              "$ref": "#/definitions/ProblemDetailVM"
            }
          },
          "500": {
            "description": "Internal error",
            "schema": {
              "$ref": "#/definitions/ProblemDetailVM"
            }
          }
        },
        "deprecated": false
      },
      "post": {
        "security": [
          {
            "Bearer": []
          }
        ],
        "x-swagger-router-controller": "okta",
        "x-security-scopes": [
          "okta_webhook"
        ],
        "tags": [
          "external"
        ],
        "summary": "listener for okta webhook",
        "operationId": "listen",
        "consumes": [
          "application/json"
        ],
        "produces": [
          "application/json"
        ],
        "parameters": [],
        "responses": {
          "200": {
            "description": "OK",
            "schema": {
              "$ref": "#/definitions/Empty"
            }
          },
          "401": {
            "description": "Unauthorized",
            "schema": {
              "$ref": "#/definitions/ProblemDetailVM"
            }
          },
          "403": {
            "description": "Forbidden",
            "schema": {
              "$ref": "#/definitions/ProblemDetailVM"
            }
          },
          "404": {
            "description": "Not Found",
            "schema": {
              "$ref": "#/definitions/ProblemDetailVM"
            }
          },
          "500": {
            "description": "Internal error",
            "schema": {
              "$ref": "#/definitions/ProblemDetailVM"
            }
          }
        },
        "deprecated": false
      }
    },
    "/vet/near-me": {
      "get": {
        "security": [
          {
            "Bearer": []
          }
        ],
        "x-swagger-router-controller": "vet",
        "tags": [
          "vet"
        ],
        "summary": " gets vets near me",
        "operationId": "get_near_me",
        "consumes": [
          "application/json"
        ],
        "produces": [
          "application/json"
        ],
        "parameters": [
          {
            "name": "latitude",
            "in": "query",
            "description": "your latitude",
            "required": true,
            "type": "number",
            "format": "double",
            "minimum": -90,
            "maximum": 90
          },
          {
            "name": "longitude",
            "in": "query",
            "description": "your longitude",
            "required": true,
            "type": "number",
            "format": "double",
            "minimum": -180,
            "maximum": 180
          },
          {
            "name": "radius_in_meters",
            "in": "query",
            "description": "radius in meters to search within",
            "required": true,
            "type": "integer",
            "minimum": 1,
            "maximum": 25000
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "schema": {
              "type": "array",
              "items": {
                "$ref": "#/definitions/VetGetDTO"
              }
            }
          },
          "401": {
            "description": "Unauthorized",
            "schema": {
              "$ref": "#/definitions/ProblemDetailVM"
            }
          },
          "403": {
            "description": "Forbidden",
            "schema": {
              "$ref": "#/definitions/ProblemDetailVM"
            }
          },
          "404": {
            "description": "Not Found",
            "schema": {
              "$ref": "#/definitions/ProblemDetailVM"
            }
          },
          "500": {
            "description": "Internal error",
            "schema": {
              "$ref": "#/definitions/ProblemDetailVM"
            }
          }
        },
        "deprecated": false
      }
    },
    "/vet-search": {
      "get": {
        "x-swagger-router-controller": "vet-search",
        "tags": [
          "vet-search"
        ],
        "summary": "Find nearby VCA and Banfield veterinary clinics",
        "description": "Location can be specified three ways: (1) provide latitude/longitude, (2) provide postal code (with optional country), or (3) omit all location params to use connecting IP location.",
        "operationId": "get_nearby_clinics",
        "consumes": [
          "application/json"
        ],
        "produces": [
          "application/json"
        ],
        "parameters": [
          {
            "name": "latitude",
            "in": "query",
            "description": "Origin latitude (preferentially used)",
            "required": false,
            "type": "number",
            "format": "double",
            "minimum": -90,
            "maximum": 90
          },
          {
            "name": "longitude",
            "in": "query",
            "description": "Origin longitude (preferentially used)",
            "required": false,
            "type": "number",
            "format": "double",
            "minimum": -180,
            "maximum": 180
          },
          {
            "name": "postal",
            "in": "query",
            "description": "Alternative to providing lat/lon. Used if lat/lon not available.",
            "required": false,
            "type": "string"
          },
          {
            "name": "country",
            "in": "query",
            "description": "Optional country code(s) used for more accurate postal code geocoding. Can accept a single country (e.g. 'US') or multiple countries comma delimited (e.g. 'US,GB'). Defaults to 'US,GB' if not specified, but is only used when postal code is provided. ISO 3166 format.",
            "required": false,
            "type": "string"
          },
          {
            "name": "radius",
            "in": "query",
            "description": "Search radius",
            "required": true,
            "type": "number",
            "minimum": 1
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "schema": {
              "type": "object",
              "properties": {
                "clinics": {
                  "type": "array",
                  "items": {
                    "type": "object"
                  }
                },
                "count": {
                  "type": "integer"
                }
              }
            }
          },
          "400": {
            "description": "Bad Request",
            "schema": {
              "$ref": "#/definitions/ProblemDetailVM"
            }
          },
          "500": {
            "description": "Internal error",
            "schema": {
              "$ref": "#/definitions/ProblemDetailVM"
            }
          }
        },
        "deprecated": false
      }
    },
    "/geo-conversion": {
      "get": {
        "x-swagger-router-controller": "geolocation-coordinates",
        "tags": [
          "geolocation-coordinates"
        ],
        "summary": "Get geolocation coordinates from City, State or  Zip",
        "operationId": "get_geolocation_coordinates",
        "consumes": [
          "application/json"
        ],
        "produces": [
          "application/json"
        ],
        "parameters": [
          {
            "name": "city",
            "in": "query",
            "description": "City Name",
            "required": false,
            "type": "string"
          },
          {
            "name": "state",
            "in": "query",
            "description": "State Code",
            "required": false,
            "type": "string"
          },
          {
            "name": "zip",
            "in": "query",
            "description": "Zip Code",
            "required": false,
            "type": "string"
          }
        ],
        "responses": {
          "200": {
            "description": "Coordinates found",
            "schema": {
              "type": "object",
              "properties": {
                "latitude": {
                  "type": "number",
                  "format": "double"
                },
                "longitude": {
                  "type": "number",
                  "format": "double"
                },
                "source": {
                  "type": "string",
                  "example": "GeoNames"
                }
              }
            }
          },
          "400": {
            "description": "Bad Request",
            "schema": {
              "$ref": "#/definitions/ProblemDetailVM"
            }
          },
          "500": {
            "description": "Internal error",
            "schema": {
              "$ref": "#/definitions/ProblemDetailVM"
            }
          }
        },
        "deprecated": false
      }
    },
    "/breeds/replace/{source}": {
      "put": {
        "x-security-scopes": [
          "kintopia-api-resource-server/breed.write"
        ],
        "x-swagger-router-controller": "breed",
        "tags": [
          "breed"
        ],
        "summary": "etl loader for breed",
        "operationId": "put_breeds_by_source",
        "consumes": [
          "application/json"
        ],
        "produces": [
          "application/json"
        ],
        "parameters": [
          {
            "name": "source",
            "in": "path",
            "description": "data source",
            "required": true,
            "type": "string",
            "enum": [
              "WISDOM_API",
              "WISDOM_API_DOG",
              "WISDOM_API_CAT",
              "WISDOM_CAT_LIST",
              "WISDOM_MIXED_BREED_LIST"
            ]
          },
          {
            "in": "body",
            "name": "data",
            "description": "dataload",
            "required": true,
            "schema": {
              "type": "array",
              "items": {
                "$ref": "#/definitions/BreedPutDTO"
              }
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "schema": {
              "type": "array",
              "items": {
                "$ref": "#/definitions/BreedGetDTO"
              }
            }
          },
          "401": {
            "description": "Unauthorized",
            "schema": {
              "$ref": "#/definitions/ProblemDetailVM"
            }
          },
          "403": {
            "description": "Forbidden",
            "schema": {
              "$ref": "#/definitions/ProblemDetailVM"
            }
          },
          "404": {
            "description": "Not Found",
            "schema": {
              "$ref": "#/definitions/ProblemDetailVM"
            }
          },
          "500": {
            "description": "Internal error",
            "schema": {
              "$ref": "#/definitions/ProblemDetailVM"
            }
          }
        },
        "deprecated": false
      }
    },
    "/breeds/{animal_type}": {
      "get": {
        "x-swagger-router-controller": "breed",
        "tags": [
          "breed"
        ],
        "summary": "gets an individual todo for a pet",
        "operationId": "get_breeds_by_animal_type",
        "consumes": [
          "application/json"
        ],
        "produces": [
          "application/json"
        ],
        "parameters": [
          {
            "name": "animal_type",
            "in": "path",
            "description": "breed animal_type",
            "required": true,
            "type": "string",
            "enum": [
              "CAT",
              "DOG"
            ]
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "schema": {
              "type": "array",
              "items": {
                "$ref": "#/definitions/BreedGetDTO"
              }
            }
          },
          "401": {
            "description": "Unauthorized",
            "schema": {
              "$ref": "#/definitions/ProblemDetailVM"
            }
          },
          "403": {
            "description": "Forbidden",
            "schema": {
              "$ref": "#/definitions/ProblemDetailVM"
            }
          },
          "404": {
            "description": "Not Found",
            "schema": {
              "$ref": "#/definitions/ProblemDetailVM"
            }
          },
          "500": {
            "description": "Internal error",
            "schema": {
              "$ref": "#/definitions/ProblemDetailVM"
            }
          }
        },
        "deprecated": false
      }
    },
    "/breed/{breed_id}": {
      "get": {
        "x-swagger-router-controller": "breed",
        "tags": [
          "breed"
        ],
        "summary": "gets an individual todo for a pet",
        "operationId": "get_breed_with_parent_info",
        "consumes": [
          "application/json"
        ],
        "produces": [
          "application/json"
        ],
        "parameters": [
          {
            "name": "breed_id",
            "in": "path",
            "description": "breed id",
            "required": true,
            "type": "string"
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "schema": {
              "$ref": "#/definitions/BreedGetDTO"
            }
          },
          "401": {
            "description": "Unauthorized",
            "schema": {
              "$ref": "#/definitions/ProblemDetailVM"
            }
          },
          "403": {
            "description": "Forbidden",
            "schema": {
              "$ref": "#/definitions/ProblemDetailVM"
            }
          },
          "404": {
            "description": "Not Found",
            "schema": {
              "$ref": "#/definitions/ProblemDetailVM"
            }
          },
          "500": {
            "description": "Internal error",
            "schema": {
              "$ref": "#/definitions/ProblemDetailVM"
            }
          }
        },
        "deprecated": false
      }
    },
    "/breed/{breed_id}/additional-info": {
      "get": {
        "x-swagger-router-controller": "breed-additional-info",
        "tags": [
          "breed"
        ],
        "summary": "(SECURED)",
        "operationId": "get_all_additional_info",
        "consumes": [
          "application/json"
        ],
        "produces": [
          "application/json"
        ],
        "parameters": [
          {
            "name": "breed_id",
            "in": "path",
            "description": "breed_id",
            "required": true,
            "type": "string",
            "format": "uuid"
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "schema": {
              "type": "array",
              "items": {
                "$ref": "#/definitions/BreedAdditionalInfoDTO"
              }
            }
          },
          "401": {
            "description": "Unauthorized",
            "schema": {
              "$ref": "#/definitions/ProblemDetailVM"
            }
          },
          "403": {
            "description": "Forbidden",
            "schema": {
              "$ref": "#/definitions/ProblemDetailVM"
            }
          },
          "404": {
            "description": "Not Found",
            "schema": {
              "$ref": "#/definitions/ProblemDetailVM"
            }
          },
          "500": {
            "description": "Internal error",
            "schema": {
              "$ref": "#/definitions/ProblemDetailVM"
            }
          }
        },
        "deprecated": false
      }
    },
    "/breed/{breed_id}/additional-info/{domain}": {
      "get": {
        "x-swagger-router-controller": "breed-additional-info",
        "tags": [
          "breed"
        ],
        "summary": "(SECURED)",
        "operationId": "get_additional_info",
        "consumes": [
          "application/json"
        ],
        "produces": [
          "application/json"
        ],
        "parameters": [
          {
            "name": "breed_id",
            "in": "path",
            "description": "breed_id",
            "required": true,
            "type": "string"
          },
          {
            "name": "domain",
            "in": "path",
            "description": "domain",
            "required": true,
            "type": "string"
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "schema": {
              "type": "array",
              "items": {
                "$ref": "#/definitions/BreedAdditionalInfoDTO"
              }
            }
          },
          "401": {
            "description": "Unauthorized",
            "schema": {
              "$ref": "#/definitions/ProblemDetailVM"
            }
          },
          "403": {
            "description": "Forbidden",
            "schema": {
              "$ref": "#/definitions/ProblemDetailVM"
            }
          },
          "404": {
            "description": "Not Found",
            "schema": {
              "$ref": "#/definitions/ProblemDetailVM"
            }
          },
          "500": {
            "description": "Internal error",
            "schema": {
              "$ref": "#/definitions/ProblemDetailVM"
            }
          }
        },
        "deprecated": false
      },
      "patch": {
        "security": [
          {
            "Bearer": []
          }
        ],
        "x-security-scopes": [
          "kintopia-api-resource-server/breed.write"
        ],
        "x-swagger-router-controller": "breed-additional-info",
        "tags": [
          "breed"
        ],
        "summary": "(SECURED)",
        "operationId": "patch_additional_info",
        "consumes": [
          "application/json"
        ],
        "produces": [
          "application/json"
        ],
        "parameters": [
          {
            "name": "breed_id",
            "in": "path",
            "description": "breed_id",
            "required": true,
            "type": "string"
          },
          {
            "name": "domain",
            "in": "path",
            "description": "domain",
            "required": true,
            "type": "string",
            "enum": [
              "WISDOM_TO_WHISTLE",
              "WISDOM_TO_BANFIELD",
              "WISDOM_TO_WALTHAM_GROWTH_CAT",
              "WISDOM_TO_WALTHAM_GROWTH_DOG"
            ]
          },
          {
            "in": "body",
            "name": "data",
            "description": "Data",
            "schema": {
              "type": "object",
              "additionalProperties": false,
              "required": [
                "data"
              ],
              "properties": {
                "data": {
                  "type": "object"
                }
              }
            }
          }
        ],
        "responses": {
          "201": {
            "description": "OK",
            "schema": {
              "$ref": "#/definitions/BreedAdditionalInfoDTO"
            }
          },
          "401": {
            "description": "Unauthorized",
            "schema": {
              "$ref": "#/definitions/ProblemDetailVM"
            }
          },
          "403": {
            "description": "Forbidden",
            "schema": {
              "$ref": "#/definitions/ProblemDetailVM"
            }
          },
          "404": {
            "description": "Not Found",
            "schema": {
              "$ref": "#/definitions/ProblemDetailVM"
            }
          },
          "500": {
            "description": "Internal error",
            "schema": {
              "$ref": "#/definitions/ProblemDetailVM"
            }
          }
        },
        "deprecated": false
      }
    },
    "/breeds/replace/additional-info/{domain}": {
      "put": {
        "x-security-scopes": [
          "kintopia-api-resource-server/breed.write"
        ],
        "x-swagger-router-controller": "breed-additional-info",
        "tags": [
          "breed"
        ],
        "summary": "etl loader for breed",
        "operationId": "put_breed_additional_info_by_domain",
        "consumes": [
          "application/json"
        ],
        "produces": [
          "application/json"
        ],
        "parameters": [
          {
            "name": "domain",
            "in": "path",
            "description": "data source",
            "required": true,
            "type": "string",
            "enum": [
              "WISDOM_TO_WHISTLE",
              "WISDOM_TO_BANFIELD",
              "WISDOM_TO_WALTHAM_GROWTH_CAT",
              "WISDOM_TO_WALTHAM_GROWTH_DOG"
            ]
          },
          {
            "in": "body",
            "name": "data",
            "description": "dataload",
            "required": true,
            "schema": {
              "type": "array",
              "items": {
                "$ref": "#/definitions/BreedAdditionalInfoPutDTO"
              }
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "schema": {
              "type": "array",
              "items": {
                "$ref": "#/definitions/BreedAdditionalInfoDTO"
              }
            }
          },
          "401": {
            "description": "Unauthorized",
            "schema": {
              "$ref": "#/definitions/ProblemDetailVM"
            }
          },
          "403": {
            "description": "Forbidden",
            "schema": {
              "$ref": "#/definitions/ProblemDetailVM"
            }
          },
          "404": {
            "description": "Not Found",
            "schema": {
              "$ref": "#/definitions/ProblemDetailVM"
            }
          },
          "500": {
            "description": "Internal error",
            "schema": {
              "$ref": "#/definitions/ProblemDetailVM"
            }
          }
        },
        "deprecated": false
      }
    },
    "/task/start": {
      "post": {
        "x-swagger-router-controller": "task",
        "security": [
          {
            "Bearer": []
          }
        ],
        "x-security-scopes": [
          "kintopia-api-resource-server/task.write"
        ],
        "tags": [
          "task"
        ],
        "summary": "records a task that has started",
        "operationId": "post_start",
        "consumes": [
          "application/json"
        ],
        "produces": [
          "application/json"
        ],
        "parameters": [
          {
            "in": "body",
            "name": "TaskDTO",
            "description": "TaskDTO",
            "required": true,
            "schema": {
              "$ref": "#/definitions/TaskDTO"
            }
          }
        ],
        "responses": {
          "201": {
            "description": "OK",
            "schema": {
              "$ref": "#/definitions/TaskDTO"
            }
          },
          "401": {
            "description": "Unauthorized",
            "schema": {
              "$ref": "#/definitions/ProblemDetailVM"
            }
          },
          "403": {
            "description": "Forbidden",
            "schema": {
              "$ref": "#/definitions/ProblemDetailVM"
            }
          },
          "404": {
            "description": "Not Found",
            "schema": {
              "$ref": "#/definitions/ProblemDetailVM"
            }
          },
          "500": {
            "description": "Internal error",
            "schema": {
              "$ref": "#/definitions/ProblemDetailVM"
            }
          }
        },
        "deprecated": false
      }
    },
    "/task/finish": {
      "patch": {
        "x-swagger-router-controller": "task",
        "security": [
          {
            "Bearer": []
          }
        ],
        "x-security-scopes": [
          "kintopia-api-resource-server/task.write"
        ],
        "tags": [
          "task"
        ],
        "summary": "records a task that is finished",
        "operationId": "put_finish",
        "consumes": [
          "application/json"
        ],
        "produces": [
          "application/json"
        ],
        "parameters": [
          {
            "in": "body",
            "name": "TaskPatchDTO",
            "description": "TaskPatchDTO",
            "required": true,
            "schema": {
              "$ref": "#/definitions/TaskPatchDTO"
            }
          }
        ],
        "responses": {
          "201": {
            "description": "OK",
            "schema": {
              "$ref": "#/definitions/TaskDTO"
            }
          },
          "401": {
            "description": "Unauthorized",
            "schema": {
              "$ref": "#/definitions/ProblemDetailVM"
            }
          },
          "403": {
            "description": "Forbidden",
            "schema": {
              "$ref": "#/definitions/ProblemDetailVM"
            }
          },
          "404": {
            "description": "Not Found",
            "schema": {
              "$ref": "#/definitions/ProblemDetailVM"
            }
          },
          "500": {
            "description": "Internal error",
            "schema": {
              "$ref": "#/definitions/ProblemDetailVM"
            }
          }
        },
        "deprecated": false
      }
    },
    "/task/recent": {
      "get": {
        "x-swagger-router-controller": "task",
        "security": [
          {
            "Bearer": []
          }
        ],
        "x-security-scopes": [
          "kintopia-api-resource-server/task.read"
        ],
        "tags": [
          "task"
        ],
        "summary": "get last N tasks by start date",
        "operationId": "get_recent",
        "consumes": [
          "application/json"
        ],
        "produces": [
          "application/json"
        ],
        "parameters": [],
        "responses": {
          "200": {
            "description": "OK",
            "schema": {
              "type": "array",
              "items": {
                "$ref": "#/definitions/TaskGetDTO"
              }
            }
          },
          "401": {
            "description": "Unauthorized",
            "schema": {
              "$ref": "#/definitions/ProblemDetailVM"
            }
          },
          "403": {
            "description": "Forbidden",
            "schema": {
              "$ref": "#/definitions/ProblemDetailVM"
            }
          },
          "404": {
            "description": "Not Found",
            "schema": {
              "$ref": "#/definitions/ProblemDetailVM"
            }
          },
          "500": {
            "description": "Internal error",
            "schema": {
              "$ref": "#/definitions/ProblemDetailVM"
            }
          }
        },
        "deprecated": false
      }
    },
    "/task/{id}": {
      "get": {
        "x-swagger-router-controller": "task",
        "security": [
          {
            "Bearer": []
          }
        ],
        "x-security-scopes": [
          "kintopia-api-resource-server/task.read"
        ],
        "tags": [
          "task"
        ],
        "summary": "get task by id",
        "operationId": "get_task",
        "consumes": [
          "application/json"
        ],
        "produces": [
          "application/json"
        ],
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "description": "id",
            "required": true,
            "type": "integer",
            "format": "int64"
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "schema": {
              "$ref": "#/definitions/TaskGetDTO"
            }
          },
          "401": {
            "description": "Unauthorized",
            "schema": {
              "$ref": "#/definitions/ProblemDetailVM"
            }
          },
          "403": {
            "description": "Forbidden",
            "schema": {
              "$ref": "#/definitions/ProblemDetailVM"
            }
          },
          "404": {
            "description": "Not Found",
            "schema": {
              "$ref": "#/definitions/ProblemDetailVM"
            }
          },
          "500": {
            "description": "Internal error",
            "schema": {
              "$ref": "#/definitions/ProblemDetailVM"
            }
          }
        },
        "deprecated": false
      }
    },
    "/dead-letter/reprocess": {
      "put": {
        "x-swagger-router-controller": "dead-letter",
        "security": [
          {
            "Bearer": []
          }
        ],
        "x-security-scopes": [
          "kintopia-api-resource-server/dead-letter.write"
        ],
        "tags": [
          "dead-letter"
        ],
        "summary": "reprocesses dlq",
        "operationId": "put_dead_letter_reprocess",
        "consumes": [
          "application/json"
        ],
        "produces": [
          "application/json"
        ],
        "parameters": [
          {
            "in": "body",
            "name": "empty",
            "description": "empty",
            "required": false,
            "schema": {
              "$ref": "#/definitions/Empty"
            }
          }
        ],
        "responses": {
          "201": {
            "description": "OK",
            "schema": {}
          },
          "401": {
            "description": "Unauthorized",
            "schema": {
              "$ref": "#/definitions/ProblemDetailVM"
            }
          },
          "403": {
            "description": "Forbidden",
            "schema": {
              "$ref": "#/definitions/ProblemDetailVM"
            }
          },
          "404": {
            "description": "Not Found",
            "schema": {
              "$ref": "#/definitions/ProblemDetailVM"
            }
          },
          "500": {
            "description": "Internal error",
            "schema": {
              "$ref": "#/definitions/ProblemDetailVM"
            }
          }
        },
        "deprecated": false
      }
    },
    "/newsletter/sign-up": {
      "post": {
        "x-swagger-router-controller": "newsletter",
        "security": [],
        "tags": [
          "newsletter"
        ],
        "summary": "sign up non registered user for newsletter",
        "operationId": "put_newsletter_sign_up",
        "consumes": [
          "application/json"
        ],
        "produces": [
          "application/json"
        ],
        "parameters": [
          {
            "in": "body",
            "name": "NewsLetterSignUpPostDTO",
            "description": "NewsLetterSignUpPostDTO",
            "required": true,
            "schema": {
              "$ref": "#/definitions/NewsLetterSignUpPostDTO"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "schema": {}
          },
          "401": {
            "description": "Unauthorized",
            "schema": {
              "$ref": "#/definitions/ProblemDetailVM"
            }
          },
          "403": {
            "description": "Forbidden",
            "schema": {
              "$ref": "#/definitions/ProblemDetailVM"
            }
          },
          "404": {
            "description": "Not Found",
            "schema": {
              "$ref": "#/definitions/ProblemDetailVM"
            }
          },
          "500": {
            "description": "Internal error",
            "schema": {
              "$ref": "#/definitions/ProblemDetailVM"
            }
          }
        },
        "deprecated": false
      }
    },
    "/contact-us": {
      "post": {
        "x-swagger-router-controller": "contact-us",
        "tags": [
          "newsletter"
        ],
        "summary": "sign up non registered user for email",
        "operationId": "post_contact_us",
        "consumes": [
          "application/json"
        ],
        "produces": [
          "application/json"
        ],
        "parameters": [
          {
            "in": "body",
            "name": "ContactUsPostDTO",
            "description": "ContactUsPostDTO",
            "required": true,
            "schema": {
              "$ref": "#/definitions/ContactUsPostDTO"
            }
          }
        ],
        "responses": {
          "201": {
            "description": "OK",
            "schema": {}
          },
          "401": {
            "description": "Unauthorized",
            "schema": {
              "$ref": "#/definitions/ProblemDetailVM"
            }
          },
          "403": {
            "description": "Forbidden",
            "schema": {
              "$ref": "#/definitions/ProblemDetailVM"
            }
          },
          "404": {
            "description": "Not Found",
            "schema": {
              "$ref": "#/definitions/ProblemDetailVM"
            }
          },
          "500": {
            "description": "Internal error",
            "schema": {
              "$ref": "#/definitions/ProblemDetailVM"
            }
          }
        },
        "deprecated": false
      }
    },
    "/email/sign-up/{domain}": {
      "post": {
        "x-swagger-router-controller": "email-signup",
        "security": [],
        "tags": [
          "newsletter"
        ],
        "summary": "sign up non registered user for email",
        "operationId": "post_email_sign_up",
        "consumes": [
          "application/json"
        ],
        "produces": [
          "application/json"
        ],
        "parameters": [
          {
            "name": "domain",
            "in": "path",
            "description": "domain",
            "required": true,
            "type": "string",
            "enum": [
              "WILDEST_NEWSLETTER",
              "WILDEST_NEWSLETTER_2024",
              "WILDEST_PACK"
            ]
          },
          {
            "in": "body",
            "name": "EmailSignUpPostDTO",
            "description": "EmailSignUpPostDTO",
            "required": true,
            "schema": {
              "$ref": "#/definitions/EmailSignUpPostDTO"
            }
          }
        ],
        "responses": {
          "201": {
            "description": "OK",
            "schema": {}
          },
          "401": {
            "description": "Unauthorized",
            "schema": {
              "$ref": "#/definitions/ProblemDetailVM"
            }
          },
          "403": {
            "description": "Forbidden",
            "schema": {
              "$ref": "#/definitions/ProblemDetailVM"
            }
          },
          "404": {
            "description": "Not Found",
            "schema": {
              "$ref": "#/definitions/ProblemDetailVM"
            }
          },
          "500": {
            "description": "Internal error",
            "schema": {
              "$ref": "#/definitions/ProblemDetailVM"
            }
          }
        },
        "deprecated": false
      }
    },
    "/asset": {
      "put": {
        "security": [
          {
            "Bearer": []
          }
        ],
        "x-swagger-router-controller": "asset",
        "tags": [
          "asset"
        ],
        "summary": "upload general user profile asset (related to user but not a profile or pet image)",
        "operationId": "put_my_asset",
        "consumes": [
          "multipart/form-data"
        ],
        "produces": [
          "application/json"
        ],
        "parameters": [
          {
            "name": "file",
            "in": "formData",
            "description": "file",
            "required": true,
            "type": "file"
          },
          {
            "name": "crop_left_offset",
            "in": "formData",
            "description": "left offset",
            "required": false,
            "type": "integer",
            "format": "int64",
            "minimum": 0
          },
          {
            "name": "crop_top_offset",
            "in": "formData",
            "description": "top offset",
            "required": false,
            "type": "integer",
            "format": "int64",
            "minimum": 0
          },
          {
            "name": "crop_width",
            "in": "formData",
            "description": "crop width",
            "required": false,
            "type": "integer",
            "format": "int64",
            "minimum": 50
          },
          {
            "name": "crop_height",
            "in": "formData",
            "description": "crop height",
            "required": false,
            "type": "integer",
            "format": "int64",
            "minimum": 50
          },
          {
            "name": "text",
            "in": "formData",
            "description": "text",
            "required": false,
            "type": "string"
          },
          {
            "name": "source",
            "in": "formData",
            "description": "source app",
            "required": true,
            "type": "string",
            "enum": [
              "THE_WILDEST"
            ]
          }
        ],
        "responses": {
          "201": {
            "description": "OK",
            "schema": {
              "$ref": "#/definitions/AssetMetaDataGetDTO"
            }
          },
          "401": {
            "description": "Unauthorized",
            "schema": {
              "$ref": "#/definitions/ProblemDetailVM"
            }
          },
          "403": {
            "description": "Forbidden",
            "schema": {
              "$ref": "#/definitions/ProblemDetailVM"
            }
          },
          "404": {
            "description": "Not Found",
            "schema": {
              "$ref": "#/definitions/ProblemDetailVM"
            }
          },
          "413": {
            "description": "Payload Too Large",
            "schema": {
              "$ref": "#/definitions/ProblemDetailVM"
            }
          },
          "500": {
            "description": "Internal error",
            "schema": {
              "$ref": "#/definitions/ProblemDetailVM"
            }
          }
        },
        "deprecated": false
      }
    },
    "/asset/cleanup": {
      "delete": {
        "security": [
          {
            "Bearer": []
          }
        ],
        "x-security-scopes": [
          "kintopia-api-resource-server/asset.write"
        ],
        "x-swagger-router-controller": "asset",
        "tags": [
          "asset"
        ],
        "summary": "delete assets that have remained orphaned for a certain period of time",
        "operationId": "cleanup_orphan_assets",
        "consumes": [
          "application/json"
        ],
        "produces": [
          "application/json"
        ],
        "parameters": [],
        "responses": {
          "200": {
            "description": "OK",
            "schema": {}
          },
          "401": {
            "description": "Unauthorized",
            "schema": {
              "$ref": "#/definitions/ProblemDetailVM"
            }
          },
          "403": {
            "description": "Forbidden",
            "schema": {
              "$ref": "#/definitions/ProblemDetailVM"
            }
          },
          "404": {
            "description": "Not Found",
            "schema": {
              "$ref": "#/definitions/ProblemDetailVM"
            }
          },
          "413": {
            "description": "Payload Too Large",
            "schema": {
              "$ref": "#/definitions/ProblemDetailVM"
            }
          },
          "500": {
            "description": "Internal error",
            "schema": {
              "$ref": "#/definitions/ProblemDetailVM"
            }
          }
        },
        "deprecated": false
      }
    },
    "/asset/{id}": {
      "get": {
        "security": [
          {
            "Bearer": []
          }
        ],
        "x-swagger-router-controller": "asset",
        "tags": [
          "asset"
        ],
        "summary": "get user profile asset",
        "operationId": "get_my_asset",
        "consumes": [
          "application/json"
        ],
        "produces": [
          "image/jpeg"
        ],
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "description": "asset id",
            "required": true,
            "type": "string",
            "format": "uuid"
          },
          {
            "name": "variant",
            "in": "query",
            "description": "variant of image MEDIUM or SMALL",
            "required": false,
            "type": "string",
            "enum": [
              "MEDIUM",
              "SMALL"
            ]
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "schema": {}
          },
          "401": {
            "description": "Unauthorized",
            "schema": {
              "$ref": "#/definitions/ProblemDetailVM"
            }
          },
          "403": {
            "description": "Forbidden",
            "schema": {
              "$ref": "#/definitions/ProblemDetailVM"
            }
          },
          "404": {
            "description": "Not Found",
            "schema": {
              "$ref": "#/definitions/ProblemDetailVM"
            }
          },
          "500": {
            "description": "Internal error",
            "schema": {
              "$ref": "#/definitions/ProblemDetailVM"
            }
          }
        },
        "deprecated": false
      },
      "put": {
        "security": [
          {
            "Bearer": []
          }
        ],
        "x-swagger-router-controller": "asset",
        "tags": [
          "asset"
        ],
        "summary": "assign general user profile asset (related to user but not a profile or pet image) as a pet or profile",
        "operationId": "assign_my_asset",
        "consumes": [
          "application/json"
        ],
        "produces": [
          "application/json"
        ],
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "description": "asset id",
            "required": true,
            "type": "string"
          },
          {
            "in": "body",
            "name": "assetPutDTO",
            "description": "assetPutDTO",
            "required": true,
            "schema": {
              "$ref": "#/definitions/AssetPutDTO"
            }
          }
        ],
        "responses": {
          "201": {
            "description": "OK",
            "schema": {
              "$ref": "#/definitions/AssetMetaDataGetDTO"
            }
          },
          "401": {
            "description": "Unauthorized",
            "schema": {
              "$ref": "#/definitions/ProblemDetailVM"
            }
          },
          "403": {
            "description": "Forbidden",
            "schema": {
              "$ref": "#/definitions/ProblemDetailVM"
            }
          },
          "404": {
            "description": "Not Found",
            "schema": {
              "$ref": "#/definitions/ProblemDetailVM"
            }
          },
          "413": {
            "description": "Payload Too Large",
            "schema": {
              "$ref": "#/definitions/ProblemDetailVM"
            }
          },
          "500": {
            "description": "Internal error",
            "schema": {
              "$ref": "#/definitions/ProblemDetailVM"
            }
          }
        },
        "deprecated": false
      }
    },
    "/auth/sign-up": {
      "post": {
        "security": [
          {}
        ],
        "x-swagger-router-controller": "auth",
        "tags": [
          "auth"
        ],
        "summary": "sign up",
        "operationId": "post_sign_up",
        "consumes": [
          "application/json"
        ],
        "produces": [
          "application/json"
        ],
        "parameters": [
          {
            "in": "body",
            "name": "authSignUpVM",
            "description": "authSignUpVM",
            "required": true,
            "schema": {
              "$ref": "#/definitions/AuthSignUpVM"
            }
          }
        ],
        "responses": {
          "201": {
            "description": "OK",
            "schema": {
              "$ref": "#/definitions/UserProfileGetDTO"
            }
          },
          "401": {
            "description": "Unauthorized",
            "schema": {
              "$ref": "#/definitions/ProblemDetailVM"
            }
          },
          "403": {
            "description": "Forbidden",
            "schema": {
              "$ref": "#/definitions/ProblemDetailVM"
            }
          },
          "404": {
            "description": "Not Found",
            "schema": {
              "$ref": "#/definitions/ProblemDetailVM"
            }
          },
          "413": {
            "description": "Payload Too Large",
            "schema": {
              "$ref": "#/definitions/ProblemDetailVM"
            }
          },
          "500": {
            "description": "Internal error",
            "schema": {
              "$ref": "#/definitions/ProblemDetailVM"
            }
          }
        },
        "deprecated": false
      },
      "patch": {
        "security": [
          {
            "Bearer": []
          }
        ],
        "x-swagger-router-controller": "auth",
        "tags": [
          "auth"
        ],
        "summary": "patch auth info",
        "operationId": "patch_sign_up",
        "consumes": [
          "application/json"
        ],
        "produces": [
          "application/json"
        ],
        "parameters": [
          {
            "in": "body",
            "name": "authPatchVM",
            "description": "authPatchVM",
            "required": true,
            "schema": {
              "$ref": "#/definitions/AuthPatchVM"
            }
          }
        ],
        "responses": {
          "201": {
            "description": "OK",
            "schema": {
              "$ref": "#/definitions/UserProfileGetDTO"
            }
          },
          "401": {
            "description": "Unauthorized",
            "schema": {
              "$ref": "#/definitions/ProblemDetailVM"
            }
          },
          "403": {
            "description": "Forbidden",
            "schema": {
              "$ref": "#/definitions/ProblemDetailVM"
            }
          },
          "404": {
            "description": "Not Found",
            "schema": {
              "$ref": "#/definitions/ProblemDetailVM"
            }
          },
          "413": {
            "description": "Payload Too Large",
            "schema": {
              "$ref": "#/definitions/ProblemDetailVM"
            }
          },
          "500": {
            "description": "Internal error",
            "schema": {
              "$ref": "#/definitions/ProblemDetailVM"
            }
          }
        },
        "deprecated": false
      }
    },
    "/auth/v2-sign-up": {
      "post": {
        "security": [
          {}
        ],
        "x-swagger-router-controller": "auth",
        "tags": [
          "auth"
        ],
        "summary": "sign up v2",
        "operationId": "post_v2_sign_up",
        "consumes": [
          "application/json"
        ],
        "produces": [
          "application/json"
        ],
        "parameters": [
          {
            "in": "body",
            "name": "authSignUpVM",
            "description": "authSignUpVM",
            "required": true,
            "schema": {
              "$ref": "#/definitions/AuthSignUpVM"
            }
          }
        ],
        "responses": {
          "201": {
            "description": "OK",
            "schema": {
              "$ref": "#/definitions/UserProfileGetDTO"
            }
          },
          "401": {
            "description": "Unauthorized",
            "schema": {
              "$ref": "#/definitions/ProblemDetailVM"
            }
          },
          "403": {
            "description": "Forbidden",
            "schema": {
              "$ref": "#/definitions/ProblemDetailVM"
            }
          },
          "404": {
            "description": "Not Found",
            "schema": {
              "$ref": "#/definitions/ProblemDetailVM"
            }
          },
          "413": {
            "description": "Payload Too Large",
            "schema": {
              "$ref": "#/definitions/ProblemDetailVM"
            }
          },
          "500": {
            "description": "Internal error",
            "schema": {
              "$ref": "#/definitions/ProblemDetailVM"
            }
          }
        },
        "deprecated": false
      }
    },
    "/auth/v2-sign-in": {
      "post": {
        "security": [
          {}
        ],
        "x-swagger-router-controller": "auth",
        "tags": [
          "auth"
        ],
        "summary": "sign in v2",
        "operationId": "post_v2_sign_in",
        "consumes": [
          "application/json"
        ],
        "produces": [
          "application/json"
        ],
        "parameters": [
          {
            "in": "body",
            "name": "authSignUpVM",
            "description": "authSignUpVM",
            "required": true,
            "schema": {
              "type": "object",
              "additionalProperties": false,
              "required": [
                "email",
                "password"
              ],
              "properties": {
                "email": {
                  "type": "string",
                  "format": "email"
                },
                "password": {
                  "type": "string"
                },
                "locale": {
                  "type": "string"
                },
                "admin": {
                  "type": "boolean",
                  "description": "Optional parameter to request admin access. If true, user must be part of theWildestAdmin group."
                }
              }
            }
          }
        ],
        "responses": {
          "201": {
            "description": "OK",
            "schema": {
              "$ref": "#/definitions/UserProfileGetDTO"
            }
          },
          "401": {
            "description": "Unauthorized",
            "schema": {
              "$ref": "#/definitions/ProblemDetailVM"
            }
          },
          "403": {
            "description": "Forbidden",
            "schema": {
              "$ref": "#/definitions/ProblemDetailVM"
            }
          },
          "404": {
            "description": "Not Found",
            "schema": {
              "$ref": "#/definitions/ProblemDetailVM"
            }
          },
          "413": {
            "description": "Payload Too Large",
            "schema": {
              "$ref": "#/definitions/ProblemDetailVM"
            }
          },
          "500": {
            "description": "Internal error",
            "schema": {
              "$ref": "#/definitions/ProblemDetailVM"
            }
          }
        },
        "deprecated": false
      }
    },
    "/auth/v2-logout": {
      "post": {
        "security": [
          {}
        ],
        "x-swagger-router-controller": "auth",
        "tags": [
          "auth"
        ],
        "summary": "logout v2",
        "operationId": "post_v2_logout",
        "consumes": [
          "application/json"
        ],
        "produces": [
          "application/json"
        ],
        "parameters": [
          {
            "in": "body",
            "name": "authlogout",
            "description": "authlogout",
            "required": true,
            "schema": {
              "type": "object",
              "additionalProperties": false,
              "required": [
                "refreshToken"
              ],
              "properties": {
                "refreshToken": {
                  "type": "string"
                }
              }
            }
          }
        ],
        "responses": {
          "201": {
            "description": "OK",
            "schema": {
              "$ref": "#/definitions/UserProfileGetDTO"
            }
          },
          "401": {
            "description": "Unauthorized",
            "schema": {
              "$ref": "#/definitions/ProblemDetailVM"
            }
          },
          "403": {
            "description": "Forbidden",
            "schema": {
              "$ref": "#/definitions/ProblemDetailVM"
            }
          },
          "404": {
            "description": "Not Found",
            "schema": {
              "$ref": "#/definitions/ProblemDetailVM"
            }
          },
          "413": {
            "description": "Payload Too Large",
            "schema": {
              "$ref": "#/definitions/ProblemDetailVM"
            }
          },
          "500": {
            "description": "Internal error",
            "schema": {
              "$ref": "#/definitions/ProblemDetailVM"
            }
          }
        },
        "deprecated": false
      }
    },
    "/auth/v2-forgot-password": {
      "post": {
        "x-swagger-router-controller": "auth",
        "tags": [
          "auth"
        ],
        "summary": "forgot password v2",
        "operationId": "post_v2_forgot_password",
        "consumes": [
          "application/json"
        ],
        "produces": [
          "application/json"
        ],
        "parameters": [
          {
            "in": "body",
            "name": "authForgotPasswordDTO",
            "description": "authForgotPasswordDTO",
            "required": true,
            "schema": {
              "$ref": "#/definitions/AuthForgotPasswordDTO"
            }
          }
        ],
        "responses": {
          "201": {
            "description": "OK",
            "schema": {}
          },
          "401": {
            "description": "Unauthorized",
            "schema": {}
          },
          "403": {
            "description": "Forbidden",
            "schema": {}
          },
          "404": {
            "description": "Not Found",
            "schema": {}
          },
          "500": {
            "description": "Internal error",
            "schema": {}
          }
        },
        "deprecated": false
      }
    },
    "/auth/v2-recover-password": {
      "post": {
        "x-swagger-router-controller": "auth",
        "tags": [
          "auth"
        ],
        "summary": "recover password",
        "operationId": "post_v2_recover_password",
        "consumes": [
          "application/json"
        ],
        "produces": [
          "application/json"
        ],
        "parameters": [
          {
            "in": "body",
            "name": "authRecoverPasswordDTO",
            "description": "authRecoverPasswordDTO",
            "required": true,
            "schema": {
              "$ref": "#/definitions/AuthRecoverPasswordDTO"
            }
          }
        ],
        "responses": {
          "201": {
            "description": "OK",
            "schema": {}
          },
          "401": {
            "description": "Unauthorized",
            "schema": {}
          },
          "403": {
            "description": "Forbidden",
            "schema": {}
          },
          "404": {
            "description": "Not Found",
            "schema": {}
          },
          "500": {
            "description": "Internal error",
            "schema": {}
          }
        },
        "deprecated": false
      }
    },
    "/auth/v2-refresh-token": {
      "post": {
        "x-swagger-router-controller": "auth",
        "tags": [
          "auth"
        ],
        "summary": "logout v2",
        "operationId": "post_v2_refresh_token",
        "consumes": [
          "application/json"
        ],
        "produces": [
          "application/json"
        ],
        "parameters": [
          {
            "in": "body",
            "name": "authlogout",
            "description": "authlogout",
            "required": true,
            "schema": {
              "type": "object",
              "additionalProperties": false,
              "required": [
                "refreshToken"
              ],
              "properties": {
                "refreshToken": {
                  "type": "string"
                }
              }
            }
          }
        ],
        "responses": {
          "201": {
            "description": "OK",
            "schema": {
              "$ref": "#/definitions/UserProfileGetDTO"
            }
          },
          "401": {
            "description": "Unauthorized",
            "schema": {
              "$ref": "#/definitions/ProblemDetailVM"
            }
          },
          "403": {
            "description": "Forbidden",
            "schema": {
              "$ref": "#/definitions/ProblemDetailVM"
            }
          },
          "404": {
            "description": "Not Found",
            "schema": {
              "$ref": "#/definitions/ProblemDetailVM"
            }
          },
          "413": {
            "description": "Payload Too Large",
            "schema": {
              "$ref": "#/definitions/ProblemDetailVM"
            }
          },
          "500": {
            "description": "Internal error",
            "schema": {
              "$ref": "#/definitions/ProblemDetailVM"
            }
          }
        },
        "deprecated": false
      }
    },
    "/auth/v2-migrate-to-uk": {
      "post": {
        "security": [
          {}
        ],
        "x-swagger-router-controller": "auth",
        "tags": [
          "auth"
        ],
        "summary": "Migrate US user to UK (Cognito) and update DB",
        "description": "Migrates a US (Okta) user to UK (Cognito) and updates their sub/locale in the Kinship API DB and Central Profile.",
        "operationId": "post_v2_migrate_to_uk",
        "consumes": [
          "application/json"
        ],
        "produces": [
          "application/json"
        ],
        "parameters": [
          {
            "in": "body",
            "name": "authMigrateToUkVM",
            "description": "authMigrateToUkVM",
            "required": true,
            "schema": {
              "type": "object",
              "additionalProperties": false,
              "required": [
                "email",
                "password"
              ],
              "properties": {
                "email": {
                  "type": "string",
                  "format": "email"
                },
                "password": {
                  "type": "string"
                },
                "first_name": {
                  "type": "string"
                },
                "last_name": {
                  "type": "string"
                }
              }
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "schema": {
              "$ref": "#/definitions/UserProfileGetDTO"
            }
          },
          "401": {
            "description": "Unauthorized",
            "schema": {
              "$ref": "#/definitions/ProblemDetailVM"
            }
          },
          "403": {
            "description": "Forbidden",
            "schema": {
              "$ref": "#/definitions/ProblemDetailVM"
            }
          },
          "404": {
            "description": "Not Found",
            "schema": {
              "$ref": "#/definitions/ProblemDetailVM"
            }
          },
          "413": {
            "description": "Payload Too Large",
            "schema": {
              "$ref": "#/definitions/ProblemDetailVM"
            }
          },
          "500": {
            "description": "Internal error",
            "schema": {
              "$ref": "#/definitions/ProblemDetailVM"
            }
          }
        },
        "deprecated": false
      }
    },
    "/auth/is-kinship-user": {
      "post": {
        "security": [
          {}
        ],
        "x-swagger-router-controller": "auth",
        "tags": [
          "auth"
        ],
        "summary": "checks kinship user status",
        "operationId": "is_kinship_user",
        "consumes": [
          "application/json"
        ],
        "produces": [
          "application/json"
        ],
        "parameters": [
          {
            "in": "body",
            "name": "sign in ",
            "description": "",
            "schema": {
              "type": "object",
              "additionalProperties": false,
              "required": [
                "email",
                "validation_data"
              ],
              "properties": {
                "email": {
                  "type": "string",
                  "title": "email",
                  "description": "email"
                },
                "validation_data": {
                  "type": "object"
                }
              }
            }
          },
          {
            "name": "force_groups",
            "in": "query",
            "description": "force group query",
            "required": false,
            "type": "string",
            "enum": [
              "true",
              "false"
            ]
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "schema": {
              "type": "object",
              "required": [
                "status"
              ],
              "properties": {
                "status": {
                  "type": "string",
                  "format": "uuid",
                  "enum": [
                    "false",
                    "DB",
                    "AUTHPROVIDER",
                    "INVALID_EMAIL"
                  ]
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized",
            "schema": {
              "$ref": "#/definitions/ProblemDetailVM"
            }
          },
          "403": {
            "description": "Forbidden",
            "schema": {
              "$ref": "#/definitions/ProblemDetailVM"
            }
          },
          "404": {
            "description": "Not Found",
            "schema": {
              "$ref": "#/definitions/ProblemDetailVM"
            }
          },
          "413": {
            "description": "Payload Too Large",
            "schema": {
              "$ref": "#/definitions/ProblemDetailVM"
            }
          },
          "500": {
            "description": "Internal error",
            "schema": {
              "$ref": "#/definitions/ProblemDetailVM"
            }
          }
        },
        "deprecated": false
      }
    },
    "/auth/v2-is-kinship-user": {
      "post": {
        "security": [
          {}
        ],
        "x-swagger-router-controller": "auth",
        "tags": [
          "auth"
        ],
        "summary": "checks kinship user status (v2, Kinship Auth)",
        "operationId": "post_v2_is_kinship_user",
        "consumes": [
          "application/json"
        ],
        "produces": [
          "application/json"
        ],
        "parameters": [
          {
            "in": "body",
            "name": "sign in ",
            "description": "",
            "schema": {
              "type": "object",
              "additionalProperties": false,
              "required": [
                "email",
                "validation_data"
              ],
              "properties": {
                "email": {
                  "type": "string",
                  "title": "email",
                  "description": "email"
                },
                "validation_data": {
                  "type": "object"
                }
              }
            }
          },
          {
            "name": "force_groups",
            "in": "query",
            "description": "force group query",
            "required": false,
            "type": "string",
            "enum": [
              "true",
              "false"
            ]
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "schema": {
              "type": "object",
              "required": [
                "status"
              ],
              "properties": {
                "status": {
                  "type": "string",
                  "format": "uuid",
                  "enum": [
                    "false",
                    "DB",
                    "AUTHPROVIDER",
                    "INVALID_EMAIL"
                  ]
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized",
            "schema": {
              "$ref": "#/definitions/ProblemDetailVM"
            }
          },
          "403": {
            "description": "Forbidden",
            "schema": {
              "$ref": "#/definitions/ProblemDetailVM"
            }
          },
          "404": {
            "description": "Not Found",
            "schema": {
              "$ref": "#/definitions/ProblemDetailVM"
            }
          },
          "413": {
            "description": "Payload Too Large",
            "schema": {
              "$ref": "#/definitions/ProblemDetailVM"
            }
          },
          "500": {
            "description": "Internal error",
            "schema": {
              "$ref": "#/definitions/ProblemDetailVM"
            }
          }
        },
        "deprecated": false
      }
    },
    "/auth/assign": {
      "post": {
        "security": [
          {}
        ],
        "x-swagger-router-controller": "auth",
        "tags": [
          "auth"
        ],
        "summary": "assign user to app",
        "operationId": "post_assign_user",
        "consumes": [
          "application/json"
        ],
        "produces": [
          "application/json"
        ],
        "parameters": [
          {
            "in": "body",
            "name": "assign",
            "description": "AuthAssignPostVM",
            "required": true,
            "schema": {
              "$ref": "#/definitions/AuthAssignPostVM"
            }
          }
        ],
        "responses": {
          "201": {
            "description": "OK",
            "schema": {
              "$ref": "#/definitions/UserProfileGetDTO"
            }
          },
          "401": {
            "description": "Unauthorized",
            "schema": {
              "$ref": "#/definitions/ProblemDetailVM"
            }
          },
          "403": {
            "description": "Forbidden",
            "schema": {
              "$ref": "#/definitions/ProblemDetailVM"
            }
          },
          "404": {
            "description": "Not Found",
            "schema": {
              "$ref": "#/definitions/ProblemDetailVM"
            }
          },
          "413": {
            "description": "Payload Too Large",
            "schema": {
              "$ref": "#/definitions/ProblemDetailVM"
            }
          },
          "500": {
            "description": "Internal error",
            "schema": {
              "$ref": "#/definitions/ProblemDetailVM"
            }
          }
        },
        "deprecated": false
      }
    },
    "/auth/change-password": {
      "post": {
        "security": [
          {
            "Bearer": []
          }
        ],
        "x-swagger-router-controller": "auth",
        "tags": [
          "auth"
        ],
        "summary": "change password",
        "operationId": "change_password",
        "consumes": [
          "application/json"
        ],
        "produces": [
          "application/json"
        ],
        "parameters": [
          {
            "in": "body",
            "name": "authChangePasswordDTO",
            "description": "authChangePasswordDTO",
            "required": true,
            "schema": {
              "$ref": "#/definitions/AuthChangePasswordDTO"
            }
          }
        ],
        "responses": {
          "201": {
            "description": "OK",
            "schema": {}
          },
          "401": {
            "description": "Unauthorized",
            "schema": {}
          },
          "403": {
            "description": "Forbidden",
            "schema": {}
          },
          "404": {
            "description": "Not Found",
            "schema": {}
          },
          "500": {
            "description": "Internal error",
            "schema": {}
          }
        },
        "deprecated": false
      }
    },
    "/auth/forgot_password": {
      "post": {
        "x-swagger-router-controller": "auth",
        "tags": [
          "auth"
        ],
        "summary": "forgot password",
        "operationId": "forgot_password",
        "consumes": [
          "application/json"
        ],
        "produces": [
          "application/json"
        ],
        "parameters": [
          {
            "in": "body",
            "name": "authForgotPasswordDTO",
            "description": "authForgotPasswordDTO",
            "required": true,
            "schema": {
              "$ref": "#/definitions/AuthForgotPasswordDTO"
            }
          }
        ],
        "responses": {
          "201": {
            "description": "OK",
            "schema": {}
          },
          "401": {
            "description": "Unauthorized",
            "schema": {}
          },
          "403": {
            "description": "Forbidden",
            "schema": {}
          },
          "404": {
            "description": "Not Found",
            "schema": {}
          },
          "500": {
            "description": "Internal error",
            "schema": {}
          }
        },
        "deprecated": false
      }
    },
    "/reset-password-mobile": {
      "post": {
        "x-swagger-router-controller": "auth",
        "tags": [
          "auth"
        ],
        "summary": "forgot password for mobile app",
        "operationId": "forgot_password_mobile",
        "consumes": [
          "application/json"
        ],
        "produces": [
          "application/json"
        ],
        "parameters": [
          {
            "in": "body",
            "name": "authMobileForgotPasswordDTO",
            "description": "authMobileForgotPasswordDTO",
            "required": true,
            "schema": {
              "$ref": "#/definitions/AuthMobileForgotPasswordDTO"
            }
          }
        ],
        "responses": {
          "201": {
            "description": "OK",
            "schema": {}
          },
          "401": {
            "description": "Unauthorized",
            "schema": {}
          },
          "403": {
            "description": "Forbidden",
            "schema": {}
          },
          "404": {
            "description": "Not Found",
            "schema": {}
          },
          "500": {
            "description": "Internal error",
            "schema": {}
          }
        },
        "deprecated": false
      }
    },
    "/auth/verify_recovery_token": {
      "post": {
        "x-swagger-router-controller": "auth",
        "tags": [
          "auth"
        ],
        "summary": "verify recovery token",
        "operationId": "verify_recovery_token",
        "consumes": [
          "application/json"
        ],
        "produces": [
          "application/json"
        ],
        "parameters": [
          {
            "in": "body",
            "name": "authRecoveryTokenDTO",
            "description": "authRecoveryTokenDTO",
            "required": true,
            "schema": {
              "$ref": "#/definitions/AuthRecoveryTokenDTO"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "schema": {}
          },
          "401": {
            "description": "Unauthorized",
            "schema": {}
          },
          "403": {
            "description": "Forbidden",
            "schema": {}
          },
          "404": {
            "description": "Not Found",
            "schema": {}
          },
          "500": {
            "description": "Internal error",
            "schema": {}
          }
        },
        "deprecated": false
      }
    },
    "/auth/recover_password": {
      "post": {
        "x-swagger-router-controller": "auth",
        "tags": [
          "auth"
        ],
        "summary": "recover password",
        "operationId": "recover_password",
        "consumes": [
          "application/json"
        ],
        "produces": [
          "application/json"
        ],
        "parameters": [
          {
            "in": "body",
            "name": "authRecoverPasswordDTO",
            "description": "authRecoverPasswordDTO",
            "required": true,
            "schema": {
              "$ref": "#/definitions/AuthRecoverPasswordDTO"
            }
          }
        ],
        "responses": {
          "201": {
            "description": "OK",
            "schema": {}
          },
          "401": {
            "description": "Unauthorized",
            "schema": {}
          },
          "403": {
            "description": "Forbidden",
            "schema": {}
          },
          "404": {
            "description": "Not Found",
            "schema": {}
          },
          "500": {
            "description": "Internal error",
            "schema": {}
          }
        },
        "deprecated": false
      }
    },
    "/auth/session/{sessionid}": {
      "delete": {
        "security": [
          {
            "Bearer": []
          }
        ],
        "x-swagger-router-controller": "auth",
        "tags": [
          "auth"
        ],
        "summary": "invalidate session",
        "operationId": "invalidate_session",
        "consumes": [
          "application/json"
        ],
        "produces": [
          "application/json"
        ],
        "parameters": [
          {
            "name": "sessionid",
            "in": "path",
            "description": "sessionid",
            "required": true,
            "type": "string"
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "schema": {}
          },
          "401": {
            "description": "Unauthorized",
            "schema": {}
          },
          "403": {
            "description": "Forbidden",
            "schema": {}
          },
          "404": {
            "description": "Not Found",
            "schema": {}
          },
          "500": {
            "description": "Internal error",
            "schema": {}
          }
        },
        "deprecated": false
      }
    },
    "/content-admin/{proxy_plus}": {
      "post": {
        "tags": [
          "search"
        ],
        "summary": "post es update",
        "security": [
          {
            "Bearer": []
          }
        ],
        "x-security-scopes": [
          "kintopia-api-resource-server/elasticsearch.write"
        ],
        "consumes": [
          "application/json"
        ],
        "produces": [
          "application/json"
        ],
        "parameters": [
          {
            "name": "proxy_plus",
            "in": "path",
            "description": "proxy pass all",
            "required": true,
            "type": "string"
          },
          {
            "in": "body",
            "name": "esadminpayload",
            "description": "esadminhpayload",
            "required": true,
            "schema": {
              "type": "object",
              "additionalProperties": true
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "schema": {}
          },
          "401": {
            "description": "Unauthorized",
            "schema": {}
          },
          "403": {
            "description": "Forbidden",
            "schema": {}
          },
          "404": {
            "description": "Not Found",
            "schema": {}
          },
          "500": {
            "description": "Internal error",
            "schema": {}
          }
        },
        "deprecated": false
      }
    },
    "/content-search/_search": {
      "post": {
        "tags": [
          "search"
        ],
        "summary": "post es search",
        "consumes": [
          "application/json"
        ],
        "produces": [
          "application/json"
        ],
        "parameters": [
          {
            "in": "body",
            "name": "essearchpayload",
            "description": "essearchpayload",
            "required": true,
            "schema": {
              "type": "object",
              "additionalProperties": true
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "schema": {}
          },
          "401": {
            "description": "Unauthorized",
            "schema": {}
          },
          "403": {
            "description": "Forbidden",
            "schema": {}
          },
          "404": {
            "description": "Not Found",
            "schema": {}
          },
          "500": {
            "description": "Internal error",
            "schema": {}
          }
        },
        "deprecated": false
      }
    },
    "/photo-contest/entry/{contest_slug}": {
      "get": {
        "x-swagger-router-controller": "photo-contest",
        "operationId": "get_photo_contest_entries",
        "tags": [
          "photocontest"
        ],
        "summary": "get all entries for a slug",
        "consumes": [
          "application/json"
        ],
        "produces": [
          "application/json"
        ],
        "parameters": [
          {
            "name": "contest_slug",
            "in": "path",
            "description": "constestslug",
            "required": true,
            "type": "string"
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "schema": {
              "type": "array",
              "items": {
                "$ref": "#/definitions/PhotoContestEntryGetDTO"
              }
            }
          },
          "401": {
            "description": "Unauthorized",
            "schema": {}
          },
          "403": {
            "description": "Forbidden",
            "schema": {}
          },
          "404": {
            "description": "Not Found",
            "schema": {}
          },
          "500": {
            "description": "Internal error",
            "schema": {}
          }
        },
        "deprecated": false
      },
      "post": {
        "security": [
          {
            "Bearer": []
          }
        ],
        "x-swagger-router-controller": "photo-contest",
        "operationId": "post_photo_contest_entry",
        "tags": [
          "photocontest"
        ],
        "summary": "post es search",
        "consumes": [
          "application/json"
        ],
        "produces": [
          "application/json"
        ],
        "parameters": [
          {
            "name": "contest_slug",
            "in": "path",
            "description": "constestslug",
            "required": true,
            "type": "string"
          },
          {
            "in": "body",
            "name": "photo_contest_entry",
            "description": "PhotoContestEntryPostDTO",
            "required": true,
            "schema": {
              "$ref": "#/definitions/PhotoContestEntryPostDTO"
            }
          }
        ],
        "responses": {
          "201": {
            "description": "OK",
            "schema": {
              "$ref": "#/definitions/PhotoContestEntryGetDTO"
            }
          },
          "401": {
            "description": "Unauthorized",
            "schema": {}
          },
          "403": {
            "description": "Forbidden",
            "schema": {}
          },
          "404": {
            "description": "Not Found",
            "schema": {}
          },
          "500": {
            "description": "Internal error",
            "schema": {}
          }
        },
        "deprecated": false
      }
    },
    "/photo-contest/admin/entries/{contest_slug}": {
      "get": {
        "security": [
          {
            "Bearer": []
          }
        ],
        "x-security-scopes": [
          "kintopia-api-resource-server/admin.thewildest|kintopia-api-resource-server/admin.thewildest.photocontest.write"
        ],
        "x-swagger-router-controller": "admin",
        "operationId": "get_photo_contest_entries_admin",
        "tags": [
          "photocontest"
        ],
        "summary": "get all entries for a slug",
        "consumes": [
          "application/json"
        ],
        "produces": [
          "application/json"
        ],
        "parameters": [
          {
            "name": "contest_slug",
            "in": "path",
            "description": "constestslug",
            "required": true,
            "type": "string"
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "schema": {
              "type": "array",
              "items": {
                "$ref": "#/definitions/PhotoContestEntryGetDTO"
              }
            }
          },
          "401": {
            "description": "Unauthorized",
            "schema": {}
          },
          "403": {
            "description": "Forbidden",
            "schema": {}
          },
          "404": {
            "description": "Not Found",
            "schema": {}
          },
          "500": {
            "description": "Internal error",
            "schema": {}
          }
        },
        "deprecated": false
      }
    },
    "/photo-contest/entry/status/{contest_slug}": {
      "put": {
        "x-swagger-router-controller": "photo-contest",
        "security": [
          {
            "Bearer": []
          }
        ],
        "x-security-scopes": [
          "kintopia-api-resource-server/admin.thewildest|kintopia-api-resource-server/admin.thewildest.photocontest.write"
        ],
        "tags": [
          "photocontest"
        ],
        "summary": "update status ",
        "operationId": "put_photo_contest_entry_statuses",
        "consumes": [
          "application/json"
        ],
        "produces": [
          "application/json"
        ],
        "parameters": [
          {
            "name": "contest_slug",
            "in": "path",
            "description": "constestslug",
            "required": true,
            "type": "string"
          },
          {
            "in": "body",
            "name": "photo_contest_entry_status_update",
            "description": "PhotoContestEntryPutStatus",
            "required": true,
            "schema": {
              "$ref": "#/definitions/PhotoContestEntryPutStatus"
            }
          }
        ],
        "responses": {
          "201": {
            "description": "OK",
            "schema": {}
          },
          "401": {
            "description": "Unauthorized",
            "schema": {
              "$ref": "#/definitions/ProblemDetailVM"
            }
          },
          "403": {
            "description": "Forbidden",
            "schema": {
              "$ref": "#/definitions/ProblemDetailVM"
            }
          },
          "404": {
            "description": "Not Found",
            "schema": {
              "$ref": "#/definitions/ProblemDetailVM"
            }
          },
          "500": {
            "description": "Internal error",
            "schema": {
              "$ref": "#/definitions/ProblemDetailVM"
            }
          }
        },
        "deprecated": false
      }
    },
    "/photo-contest/entry/winner/{contest_slug}": {
      "put": {
        "x-swagger-router-controller": "photo-contest",
        "security": [
          {
            "Bearer": []
          }
        ],
        "x-security-scopes": [
          "kintopia-api-resource-server/admin.thewildest|kintopia-api-resource-server/admin.thewildest.photocontest.write"
        ],
        "tags": [
          "photocontest"
        ],
        "summary": "update winner ",
        "operationId": "put_photo_contest_entry_winners",
        "consumes": [
          "application/json"
        ],
        "produces": [
          "application/json"
        ],
        "parameters": [
          {
            "name": "contest_slug",
            "in": "path",
            "description": "constestslug",
            "required": true,
            "type": "string"
          },
          {
            "in": "body",
            "name": "photo_contest_entry_winner_update",
            "description": "PhotoContestEntryPutWinner",
            "required": true,
            "schema": {
              "$ref": "#/definitions/PhotoContestEntryPutWinner"
            }
          }
        ],
        "responses": {
          "201": {
            "description": "OK",
            "schema": {}
          },
          "400": {
            "description": "Bad Request",
            "schema": {
              "$ref": "#/definitions/ProblemDetailVM"
            }
          },
          "401": {
            "description": "Unauthorized",
            "schema": {
              "$ref": "#/definitions/ProblemDetailVM"
            }
          },
          "403": {
            "description": "Forbidden",
            "schema": {
              "$ref": "#/definitions/ProblemDetailVM"
            }
          },
          "404": {
            "description": "Not Found",
            "schema": {
              "$ref": "#/definitions/ProblemDetailVM"
            }
          },
          "500": {
            "description": "Internal error",
            "schema": {
              "$ref": "#/definitions/ProblemDetailVM"
            }
          }
        },
        "deprecated": false
      }
    },
    "/photo-contest/my-entries/{contest_slug}": {
      "get": {
        "x-swagger-router-controller": "photo-contest",
        "operationId": "get_my_photo_contest_entries",
        "security": [
          {
            "Bearer": []
          }
        ],
        "tags": [
          "photocontest"
        ],
        "summary": "post es search",
        "consumes": [
          "application/json"
        ],
        "produces": [
          "application/json"
        ],
        "parameters": [
          {
            "name": "contest_slug",
            "in": "path",
            "description": "constestslug",
            "required": true,
            "type": "string"
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "schema": {
              "type": "array",
              "items": {
                "$ref": "#/definitions/PhotoContestEntryGetDTO"
              }
            }
          },
          "401": {
            "description": "Unauthorized",
            "schema": {}
          },
          "403": {
            "description": "Forbidden",
            "schema": {}
          },
          "404": {
            "description": "Not Found",
            "schema": {}
          },
          "500": {
            "description": "Internal error",
            "schema": {}
          }
        },
        "deprecated": false
      },
      "post": {
        "security": [
          {
            "Bearer": []
          }
        ],
        "x-swagger-router-controller": "photo-contest",
        "operationId": "post_photo_contest_entry",
        "tags": [
          "photocontest"
        ],
        "summary": "post es search",
        "consumes": [
          "application/json"
        ],
        "produces": [
          "application/json"
        ],
        "parameters": [
          {
            "name": "contest_slug",
            "in": "path",
            "description": "constestslug",
            "required": true,
            "type": "string"
          },
          {
            "in": "body",
            "name": "photo_contest_entry",
            "description": "PhotoContestEntryPostDTO",
            "required": true,
            "schema": {
              "$ref": "#/definitions/PhotoContestEntryPostDTO"
            }
          }
        ],
        "responses": {
          "201": {
            "description": "OK",
            "schema": {
              "$ref": "#/definitions/PhotoContestEntryGetDTO"
            }
          },
          "401": {
            "description": "Unauthorized",
            "schema": {}
          },
          "403": {
            "description": "Forbidden",
            "schema": {}
          },
          "404": {
            "description": "Not Found",
            "schema": {}
          },
          "500": {
            "description": "Internal error",
            "schema": {}
          }
        },
        "deprecated": false
      }
    },
    "/photo-contest/entry/{contest_slug}/{photo_contest_entry_id}": {
      "get": {
        "x-swagger-router-controller": "photo-contest",
        "operationId": "get_photo_contest_entry",
        "tags": [
          "photocontest"
        ],
        "summary": "post es search",
        "consumes": [
          "application/json"
        ],
        "produces": [
          "application/json"
        ],
        "parameters": [
          {
            "name": "contest_slug",
            "in": "path",
            "description": "constest slug",
            "required": true,
            "type": "string"
          },
          {
            "name": "photo_contest_entry_id",
            "in": "path",
            "description": "photo_contest_entry_id",
            "required": true,
            "type": "string",
            "format": "uuid"
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "schema": {
              "$ref": "#/definitions/PhotoContestEntryGetDTO"
            }
          },
          "401": {
            "description": "Unauthorized",
            "schema": {}
          },
          "403": {
            "description": "Forbidden",
            "schema": {}
          },
          "404": {
            "description": "Not Found",
            "schema": {}
          },
          "500": {
            "description": "Internal error",
            "schema": {}
          }
        },
        "deprecated": false
      }
    },
    "/photo-contest/asset/{domain}/{contest_slug}/{photo_contest_entry_id}": {
      "get": {
        "x-swagger-router-controller": "photo-contest",
        "operationId": "get_photo_contest_entry_asset",
        "tags": [
          "photocontest"
        ],
        "summary": "post es search",
        "consumes": [
          "application/json"
        ],
        "produces": [
          "application/json"
        ],
        "parameters": [
          {
            "name": "domain",
            "in": "path",
            "description": "domain",
            "required": true,
            "type": "string",
            "enum": [
              "entry",
              "user",
              "pet"
            ]
          },
          {
            "name": "contest_slug",
            "in": "path",
            "description": "constest slug",
            "required": true,
            "type": "string"
          },
          {
            "name": "photo_contest_entry_id",
            "in": "path",
            "description": "photo_contest_entry_id",
            "required": true,
            "type": "string",
            "format": "uuid"
          },
          {
            "name": "variant",
            "in": "query",
            "description": "variant of image MEDIUM or SMALL",
            "required": false,
            "type": "string",
            "enum": [
              "MEDIUM",
              "SMALL"
            ]
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "schema": {}
          },
          "401": {
            "description": "Unauthorized",
            "schema": {}
          },
          "403": {
            "description": "Forbidden",
            "schema": {}
          },
          "404": {
            "description": "Not Found",
            "schema": {}
          },
          "500": {
            "description": "Internal error",
            "schema": {}
          }
        },
        "deprecated": false
      }
    },
    "/photo-contest/vote/{contest_slug}": {
      "post": {
        "x-swagger-router-controller": "photo-contest",
        "operationId": "post_photo_contest_vote",
        "tags": [
          "photocontest"
        ],
        "summary": "post es search",
        "consumes": [
          "application/json"
        ],
        "produces": [
          "application/json"
        ],
        "parameters": [
          {
            "name": "contest_slug",
            "in": "path",
            "description": "contest_slug",
            "required": true,
            "type": "string"
          },
          {
            "in": "body",
            "name": "photo_contest_vote",
            "description": "PhotoContestVotePostDTO",
            "required": true,
            "schema": {
              "$ref": "#/definitions/PhotoContestVotePostDTO"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "schema": {
              "$ref": "#/definitions/PhotoContestEntryGetDTO"
            }
          },
          "401": {
            "description": "Unauthorized",
            "schema": {}
          },
          "403": {
            "description": "Forbidden",
            "schema": {}
          },
          "404": {
            "description": "Not Found",
            "schema": {}
          },
          "500": {
            "description": "Internal error",
            "schema": {}
          }
        },
        "deprecated": false
      }
    },
    "/photo-contest/admin-asset/{domain}/{photo_contest_entry_id}": {
      "get": {
        "security": [
          {
            "Bearer": []
          }
        ],
        "x-security-scopes": [
          "kintopia-api-resource-server/admin.thewildest|kintopia-api-resource-server/admin.thewildest.photocontest.write"
        ],
        "x-swagger-router-controller": "admin",
        "tags": [
          "admin"
        ],
        "summary": "get an asset from user_assets s3 bucket",
        "operationId": "get_user_asset",
        "consumes": [
          "application/json"
        ],
        "produces": [
          "image/jpeg",
          "image/png"
        ],
        "parameters": [
          {
            "name": "photo_contest_entry_id",
            "in": "path",
            "description": "photo_contest_entry_id",
            "required": true,
            "type": "string",
            "format": "uuid"
          },
          {
            "name": "variant",
            "in": "query",
            "description": "variant of image MEDIUM or SMALL",
            "required": false,
            "type": "string",
            "enum": [
              "MEDIUM",
              "SMALL"
            ]
          },
          {
            "name": "domain",
            "in": "path",
            "description": "domain",
            "required": true,
            "type": "string",
            "enum": [
              "pet",
              "user",
              "entry"
            ]
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "schema": {}
          },
          "401": {
            "description": "Unauthorized",
            "schema": {
              "$ref": "#/definitions/ProblemDetailVM"
            }
          },
          "403": {
            "description": "Forbidden",
            "schema": {
              "$ref": "#/definitions/ProblemDetailVM"
            }
          },
          "404": {
            "description": "Not Found",
            "schema": {
              "$ref": "#/definitions/ProblemDetailVM"
            }
          },
          "500": {
            "description": "Internal error",
            "schema": {
              "$ref": "#/definitions/ProblemDetailVM"
            }
          }
        },
        "deprecated": false
      }
    },
    "/stripe/products/{product_id}": {
      "get": {
        "x-swagger-router-controller": "product",
        "tags": [
          "product"
        ],
        "summary": "get product info",
        "operationId": "get_product",
        "consumes": [
          "application/json"
        ],
        "produces": [
          "application/json"
        ],
        "parameters": [
          {
            "name": "product_id",
            "in": "path",
            "description": "product_id",
            "required": true,
            "type": "string"
          }
        ],
        "responses": {
          "201": {
            "description": "OK",
            "schema": {}
          },
          "401": {
            "description": "Unauthorized",
            "schema": {
              "$ref": "#/definitions/ProblemDetailVM"
            }
          },
          "403": {
            "description": "Forbidden",
            "schema": {
              "$ref": "#/definitions/ProblemDetailVM"
            }
          },
          "404": {
            "description": "Not Found",
            "schema": {
              "$ref": "#/definitions/ProblemDetailVM"
            }
          },
          "500": {
            "description": "Internal error",
            "schema": {
              "$ref": "#/definitions/ProblemDetailVM"
            }
          }
        },
        "deprecated": false
      }
    },
    "/user/cvr-tracking": {
      "post": {
        "x-swagger-router-controller": "user-cvr-tracking",
        "tags": [
          "cvr-tracking"
        ],
        "summary": "record user cvr tracking",
        "operationId": "post_user_cvr_tracking",
        "consumes": [
          "application/json"
        ],
        "produces": [
          "application/json"
        ],
        "responses": {
          "201": {
            "description": "OK",
            "schema": {}
          },
          "401": {
            "description": "Unauthorized",
            "schema": {
              "$ref": "#/definitions/ProblemDetailVM"
            }
          },
          "403": {
            "description": "Forbidden",
            "schema": {
              "$ref": "#/definitions/ProblemDetailVM"
            }
          },
          "404": {
            "description": "Not Found",
            "schema": {
              "$ref": "#/definitions/ProblemDetailVM"
            }
          },
          "500": {
            "description": "Internal error",
            "schema": {
              "$ref": "#/definitions/ProblemDetailVM"
            }
          }
        },
        "deprecated": false
      }
    },
    "/user-location": {
      "get": {
        "x-swagger-router-controller": "user-location",
        "tags": [
          "user-location"
        ],
        "summary": "gets the user location from maxmind based on the user's ip",
        "operationId": "get_user_location",
        "consumes": [
          "application/json"
        ],
        "produces": [
          "application/json"
        ],
        "responses": {
          "201": {
            "description": "OK",
            "schema": {}
          },
          "401": {
            "description": "Unauthorized",
            "schema": {
              "$ref": "#/definitions/ProblemDetailVM"
            }
          },
          "403": {
            "description": "Forbidden",
            "schema": {
              "$ref": "#/definitions/ProblemDetailVM"
            }
          },
          "404": {
            "description": "Not Found",
            "schema": {
              "$ref": "#/definitions/ProblemDetailVM"
            }
          },
          "500": {
            "description": "Internal error",
            "schema": {
              "$ref": "#/definitions/ProblemDetailVM"
            }
          }
        },
        "deprecated": false
      }
    },
    "/user-longitude-latitude": {
      "get": {
        "x-swagger-router-controller": "user-location",
        "tags": [
          "user-location"
        ],
        "summary": "gets the user longitude and latitude from maxmind based on the user's ip",
        "operationId": "get_user_location_longitude_latitude",
        "consumes": [
          "application/json"
        ],
        "produces": [
          "application/json"
        ],
        "responses": {
          "201": {
            "description": "OK",
            "schema": {}
          },
          "401": {
            "description": "Unauthorized",
            "schema": {
              "$ref": "#/definitions/ProblemDetailVM"
            }
          },
          "403": {
            "description": "Forbidden",
            "schema": {
              "$ref": "#/definitions/ProblemDetailVM"
            }
          },
          "404": {
            "description": "Not Found",
            "schema": {
              "$ref": "#/definitions/ProblemDetailVM"
            }
          },
          "500": {
            "description": "Internal error",
            "schema": {
              "$ref": "#/definitions/ProblemDetailVM"
            }
          }
        },
        "deprecated": false
      }
    },
    "/consent/preferences": {
      "post": {
        "x-swagger-router-controller": "user-consent-preference",
        "tags": [
          "user-preference"
        ],
        "summary": "gets the user preferences from KI service",
        "operationId": "get_user_consent_preference",
        "consumes": [
          "application/json"
        ],
        "produces": [
          "application/json"
        ],
        "responses": {
          "201": {
            "description": "OK",
            "schema": {}
          },
          "401": {
            "description": "Unauthorized",
            "schema": {
              "$ref": "#/definitions/ProblemDetailVM"
            }
          },
          "403": {
            "description": "Forbidden",
            "schema": {
              "$ref": "#/definitions/ProblemDetailVM"
            }
          },
          "404": {
            "description": "Not Found",
            "schema": {
              "$ref": "#/definitions/ProblemDetailVM"
            }
          },
          "500": {
            "description": "Internal error",
            "schema": {
              "$ref": "#/definitions/ProblemDetailVM"
            }
          }
        },
        "deprecated": false
      }
    },
    "/dsar/erasure": {
      "post": {
        "x-swagger-router-controller": "dsar",
        "tags": [
          "external"
        ],
        "summary": "Controller for dsar erasure",
        "operationId": "erasure",
        "consumes": [
          "application/json"
        ],
        "produces": [
          "application/json"
        ],
        "parameters": [
          {
            "in": "body",
            "name": "dsarErasureDTO",
            "description": "dsarErasureDTO",
            "required": true,
            "schema": {
              "type": "object",
              "additionalProperties": false,
              "properties": {
                "email": {
                  "type": "string"
                },
                "kinshipId": {
                  "type": "string"
                },
                "requestId": {
                  "type": "string"
                },
                "requesterEmailId": {
                  "type": "string"
                }
              },
              "required": [
                "email",
                "kinshipId",
                "requestId"
              ]
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "schema": {
              "$ref": "#/definitions/Empty"
            }
          },
          "204": {
            "description": "No Content"
          },
          "400": {
            "description": "Bad Request",
            "schema": {
              "$ref": "#/definitions/ProblemDetailVM"
            }
          },
          "401": {
            "description": "Unauthorized",
            "schema": {
              "$ref": "#/definitions/ProblemDetailVM"
            }
          },
          "403": {
            "description": "Forbidden",
            "schema": {
              "$ref": "#/definitions/ProblemDetailVM"
            }
          },
          "404": {
            "description": "Not Found",
            "schema": {
              "$ref": "#/definitions/ProblemDetailVM"
            }
          },
          "500": {
            "description": "Internal error",
            "schema": {
              "$ref": "#/definitions/ProblemDetailVM"
            }
          }
        },
        "deprecated": false
      }
    },
    "/sopost-create-webhook": {
      "post": {
        "summary": "Create SoPost OrderEvent webhook",
        "description": "Creates a webhook with SoPost to listen for updates to specific littlekin UK orders (eg: DISPATCHED, APPROVED, REJECTED).",
        "x-swagger-router-controller": "sopost-create-webhook",
        "operationId": "sopost_create_webhook",
        "tags": [
          "SoPost"
        ],
        "responses": {
          "200": {
            "description": "Webhook successfully created"
          },
          "500": {
            "description": "Registration failed"
          }
        }
      }
    },
    "/sopost-webhook-listener": {
      "post": {
        "summary": "SoPost webhook receiver",
        "x-swagger-router-controller": "sopost-webhook-listener",
        "operationId": "sopost_webhook_listener",
        "tags": [
          "SoPost"
        ],
        "parameters": [
          {
            "in": "body",
            "name": "body",
            "required": true,
            "schema": {
              "type": "object",
              "required": [
                "event_id",
                "event",
                "order_id"
              ],
              "properties": {
                "event_id": {
                  "type": "string"
                },
                "event": {
                  "type": "string",
                  "enum": [
                    "PENDING",
                    "APPROVED",
                    "REJECTED",
                    "DISPATCHED"
                  ]
                },
                "order_id": {
                  "type": "string"
                },
                "activity_id": {
                  "type": "string"
                }
              }
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Webhook received"
          },
          "400": {
            "description": "Invalid payload"
          }
        }
      }
    },
    "/sopost-shopify-order-ids": {
      "post": {
        "summary": "Store Shopify and SoPost IDs",
        "description": "Stores the relationship between a Shopify order ID and an SO Post ID.",
        "x-swagger-router-controller": "shopify-sopost-relationship",
        "operationId": "store_order_ids",
        "consumes": [
          "application/json"
        ],
        "produces": [
          "application/json"
        ],
        "parameters": [
          {
            "in": "body",
            "name": "body",
            "required": true,
            "schema": {
              "type": "object",
              "properties": {
                "sopost_order_id": {
                  "type": "string",
                  "example": "SO123456"
                },
                "shopify_order_id": {
                  "type": "string",
                  "example": "SHO987654"
                }
              },
              "required": [
                "sopost_order_id",
                "shopify_order_id"
              ]
            }
          }
        ],
        "responses": {
          "201": {
            "description": "IDs stored successfully",
            "schema": {
              "type": "object",
              "example": {
                "id": 1,
                "sopost_order_id": "SO123456",
                "shopify_order_id": "SHO987654",
                "created_at": "2025-08-01T12:00:00Z"
              }
            }
          },
          "400": {
            "description": "Invalid input",
            "schema": {
              "type": "object",
              "example": {
                "message": "Invalid input"
              }
            }
          },
          "500": {
            "description": "Internal server error"
          }
        }
      }
    }
  },
  "definitions": {
    "CreatePortalSessionResponseDTO": {
      "type": "object",
      "title": "CreateCustomerPortalSessionBody",
      "required": [
        "url"
      ],
      "properties": {
        "url": {
          "type": "string"
        }
      }
    },
    "CreateCustomerPortalSessionBody": {
      "type": "object",
      "title": "CreateCustomerPortalSessionBody",
      "required": [
        "returnPath"
      ],
      "properties": {
        "returnPath": {
          "type": "string"
        }
      }
    },
    "CreateSubscriptionCustomerBody": {
      "type": "object",
      "title": "CreateSubscriptionCustomerBody",
      "required": [
        "name"
      ],
      "properties": {
        "name": {
          "type": "string"
        },
        "billingAddress": {
          "type": "object",
          "required": [
            "line1",
            "city",
            "state",
            "postal_code",
            "country"
          ],
          "properties": {
            "line1": {
              "type": "string"
            },
            "line2": {
              "type": "string"
            },
            "city": {
              "type": "string"
            },
            "state": {
              "type": "string"
            },
            "postal_code": {
              "type": "string"
            },
            "country": {
              "type": "string"
            }
          },
          "description": "Address data used for creating stripe customers"
        },
        "shipping": {
          "type": "object",
          "required": [
            "name",
            "address",
            "phone"
          ],
          "properties": {
            "name": {
              "type": "string"
            },
            "phone": {
              "type": "string"
            },
            "address": {
              "type": "object",
              "required": [
                "line1",
                "city",
                "state",
                "postal_code",
                "country"
              ],
              "properties": {
                "line1": {
                  "type": "string"
                },
                "line2": {
                  "type": "string"
                },
                "city": {
                  "type": "string"
                },
                "state": {
                  "type": "string"
                },
                "postal_code": {
                  "type": "string"
                },
                "country": {
                  "type": "string"
                }
              },
              "description": "Shipping data used for creating stripe customers"
            }
          }
        }
      }
    },
    "CreateSubscriptionBody": {
      "type": "object",
      "title": "CreateSubscriptionBody",
      "required": [
        "priceId",
        "subscriptionType",
        "paymentMethodId"
      ],
      "properties": {
        "paymentMethodId": {
          "type": "string"
        },
        "petProfileId": {
          "type": "string"
        },
        "priceId": {
          "type": "string"
        },
        "subscriptionType": {
          "type": "string"
        },
        "promoId": {
          "type": "string"
        }
      }
    },
    "CreateTrialBody": {
      "type": "object",
      "title": "TrialSubscriptionBody",
      "properties": {
        "subscriptionType": {
          "type": "string"
        },
        "trialType": {
          "type": "string",
          "enum": [
            "linnaeus",
            "la_wildfire"
          ]
        },
        "trialPeriodDays": {
          "type": "number"
        }
      }
    },
    "ProblemDetailVM": {
      "type": "object",
      "required": [
        "type",
        "title",
        "status"
      ],
      "properties": {
        "type": {
          "type": "string",
          "description": "a URL to a document describing the error condition"
        },
        "title": {
          "type": "string",
          "description": "A short, human-readable title for the general error type; the title should not change for given types"
        },
        "status": {
          "type": "number",
          "description": "Conveying the HTTP status code; this is so that all information is in one place, but also to correct for changes in the status code due to the usage of proxy servers. The status member, if present, is only advisory as generators MUST use the same status code in the actual HTTP response to assure that generic HTTP software that does not understand this format still behaves correctly"
        }
      },
      "title": "ProblemDetailVM",
      "description": "Encapsulates a https://tools.ietf.org/html/rfc7807 style error response"
    },
    "ProfilePartnerPutDTO": {
      "type": "object",
      "additionalProperties": false,
      "properties": {
        "divisionId": {
          "type": "string"
        },
        "division": {
          "type": "string"
        },
        "partnerCode": {
          "type": "string"
        }
      },
      "title": "ProfilePartnerPutDTO"
    },
    "ProfilePartnerPostDTO": {
      "type": "object",
      "additionalProperties": false,
      "properties": {
        "division": {
          "type": "string"
        },
        "partnerCode": {
          "type": "string"
        },
        "newsletterOptin": {
          "type": "boolean"
        }
      },
      "title": "ProfilePartnerPutDTO"
    },
    "ProfilePartnerGetDTO": {
      "type": "object",
      "additionalProperties": false,
      "properties": {},
      "title": "ProfilePartnerGetDTO"
    },
    "ProfileConsentPostDTO": {
      "type": "object",
      "additionalProperties": false,
      "properties": {
        "consents": {
          "type": "array",
          "items": {
            "$ref": "#/definitions/LittleKinConsentDTO"
          }
        }
      },
      "title": "ProfileConsentPostDTO"
    },
    "UserProfilePatchDTO": {
      "type": "object",
      "additionalProperties": false,
      "required": [
        "source",
        "email"
      ],
      "properties": {
        "source": {
          "type": "string",
          "enum": [
            "THE_WILDEST"
          ]
        },
        "partner": {
          "type": "string",
          "minLength": 0,
          "enum": [
            "WWW",
            "WALMART"
          ]
        },
        "email": {
          "type": "string",
          "format": "email"
        },
        "username": {
          "type": [
            "null",
            "string"
          ],
          "minLength": 0
        },
        "first_name": {
          "type": "string",
          "minLength": 0
        },
        "last_name": {
          "type": "string",
          "minLength": 0
        },
        "birth_date": {
          "type": "string",
          "minLength": 0,
          "format": "date"
        },
        "gender": {
          "type": "string",
          "minLength": 0,
          "enum": [
            "MALE",
            "FEMALE"
          ]
        },
        "street_1": {
          "type": "string",
          "minLength": 0
        },
        "street_2": {
          "type": "string",
          "minLength": 0
        },
        "city": {
          "type": "string",
          "minLength": 0
        },
        "state_province": {
          "type": "string",
          "minLength": 0
        },
        "postal_zip": {
          "type": "string",
          "minLength": 0
        },
        "country": {
          "type": "string",
          "minLength": 0
        },
        "home_phone": {
          "type": "string",
          "minLength": 0
        },
        "mobile_phone": {
          "type": "string",
          "minLength": 0
        },
        "work_phone": {
          "type": "string",
          "minLength": 0
        },
        "multiple_dog_owner": {
          "type": "string",
          "enum": [
            "true",
            "false"
          ]
        }
      },
      "title": "UserProfilePatchDTO"
    },
    "UserProfileGetDTO": {
      "type": "object",
      "additionalProperties": false,
      "properties": {
        "first_name": {
          "type": "string",
          "minLength": 0
        },
        "last_name": {
          "type": "string",
          "minLength": 0
        },
        "email": {
          "type": "string",
          "minLength": 0,
          "format": "email"
        },
        "source": {
          "type": "string",
          "minLength": 0,
          "enum": [
            "THEWILDEST"
          ]
        },
        "partner": {
          "type": "string",
          "minLength": 0,
          "enum": [
            "WWW",
            "WALMART"
          ]
        },
        "birth_date": {
          "type": "string",
          "minLength": 0,
          "format": "date"
        },
        "gender": {
          "type": "string",
          "minLength": 0,
          "enum": [
            "MALE",
            "FEMALE"
          ]
        },
        "street_1": {
          "type": "string",
          "minLength": 0
        },
        "street_2": {
          "type": "string",
          "minLength": 0
        },
        "city": {
          "type": "string",
          "minLength": 0
        },
        "state_province": {
          "type": "string",
          "minLength": 0
        },
        "postal_zip": {
          "type": "string",
          "minLength": 0
        },
        "country": {
          "type": "string",
          "minLength": 0
        },
        "home_phone": {
          "type": "string",
          "minLength": 0
        },
        "mobile_phone": {
          "type": "string",
          "minLength": 0
        },
        "work_phone": {
          "type": "string",
          "minLength": 0
        },
        "multiple_dog_owner": {
          "type": "string",
          "enum": [
            "true",
            "false"
          ]
        },
        "image_asset_id": {
          "type": "string",
          "minLength": 0,
          "description": "asset id of main user-profile image"
        }
      },
      "title": "UserProfileGetDTO"
    },
    "UserProfileAdditionalInfoDTO": {
      "type": "object",
      "additionalProperties": false,
      "required": [
        "user_profile_id",
        "domain"
      ],
      "properties": {
        "user_profile_id": {
          "type": "string"
        },
        "domain": {
          "type": "string"
        },
        "data": {
          "type": "object"
        },
        "created_at": {
          "type": "string",
          "format": "date-time",
          "title": "createdTime",
          "description": "createdTime"
        },
        "updated_at": {
          "type": "string",
          "format": "date-time",
          "title": "Updated Time",
          "description": "Updated Time"
        }
      },
      "title": "UserProfileAdditionalInfoDTO"
    },
    "PetProfilePostDTO": {
      "type": "object",
      "required": [
        "name",
        "animal_type"
      ],
      "additionalProperties": false,
      "properties": {
        "name": {
          "type": "string"
        },
        "animal_type": {
          "type": "string",
          "enum": [
            "DOG",
            "CAT"
          ]
        },
        "breed": {
          "type": "string",
          "minLength": 0
        },
        "birth_date": {
          "type": "string",
          "minLength": 0,
          "format": "date"
        },
        "acquisition_date": {
          "type": "string",
          "minLength": 0,
          "format": "date"
        },
        "gender": {
          "type": "string",
          "enum": [
            "MALE",
            "FEMALE"
          ]
        },
        "weight": {
          "type": "string"
        },
        "spayed_or_neutered": {
          "type": "string",
          "minLength": 0,
          "enum": [
            "",
            "true",
            "false"
          ]
        },
        "spayed_or_neutered_date": {
          "type": "string",
          "minLength": 0,
          "format": "date"
        },
        "size": {
          "type": "string",
          "enum": [
            "TOY",
            "SMALL",
            "MEDIUM",
            "LARGE",
            "GIANT",
            ""
          ]
        },
        "microchip_id": {
          "type": "string",
          "minLength": 0
        },
        "wisdom_breed_id_1": {
          "type": "string",
          "minLength": 0
        },
        "wisdom_breed_id_2": {
          "type": "string",
          "minLength": 0
        },
        "wisdom_breed_id_3": {
          "type": "string",
          "minLength": 0
        },
        "wisdom_breed_id_4": {
          "type": "string",
          "minLength": 0
        },
        "is_first_pet": {
          "type": "string",
          "enum": [
            "true",
            "false"
          ]
        },
        "birth_date_precision": {
          "type": "string",
          "enum": [
            "DAY",
            "MONTH",
            "YEAR"
          ]
        },
        "acquisition_date_precision": {
          "type": "string",
          "enum": [
            "DAY",
            "MONTH",
            "YEAR"
          ]
        }
      },
      "title": "PetProfilePostDTO"
    },
    "PetProfilePatchDTO": {
      "type": "object",
      "additionalProperties": false,
      "properties": {
        "pet_profile_id": {
          "type": "string"
        },
        "name": {
          "type": "string"
        },
        "animal_type": {
          "type": "string",
          "enum": [
            "DOG",
            "CAT"
          ]
        },
        "breed": {
          "type": "string",
          "minLength": 0
        },
        "birth_date": {
          "type": "string",
          "minLength": 0,
          "format": "date"
        },
        "acquisition_date": {
          "type": "string",
          "minLength": 0,
          "format": "date"
        },
        "gender": {
          "type": "string",
          "enum": [
            "MALE",
            "FEMALE"
          ]
        },
        "weight": {
          "type": "string"
        },
        "spayed_or_neutered": {
          "type": "string",
          "minLength": 0,
          "enum": [
            "",
            "true",
            "false"
          ]
        },
        "spayed_or_neutered_date": {
          "type": [
            "null",
            "string"
          ],
          "minLength": 0,
          "format": "date"
        },
        "size": {
          "type": "string",
          "enum": [
            "TOY",
            "SMALL",
            "MEDIUM",
            "LARGE",
            "GIANT",
            ""
          ]
        },
        "microchip_id": {
          "type": "string",
          "minLength": 0
        },
        "wisdom_breed_id_1": {
          "type": "string",
          "minLength": 0
        },
        "wisdom_breed_id_2": {
          "type": "string",
          "minLength": 0
        },
        "wisdom_breed_id_3": {
          "type": "string",
          "minLength": 0
        },
        "wisdom_breed_id_4": {
          "type": "string",
          "minLength": 0
        },
        "is_first_pet": {
          "type": "string",
          "enum": [
            "true",
            "false"
          ]
        },
        "birth_date_precision": {
          "type": "string",
          "enum": [
            "DAY",
            "MONTH",
            "YEAR"
          ]
        },
        "acquisition_date_precision": {
          "type": "string",
          "enum": [
            "DAY",
            "MONTH",
            "YEAR"
          ]
        }
      },
      "title": "PetProfilePatchDTO"
    },
    "PetProfileGetDTO": {
      "type": "object",
      "additionalProperties": false,
      "properties": {
        "id": {
          "type": "string"
        },
        "name": {
          "type": "string"
        },
        "animal_type": {
          "type": "string",
          "enum": [
            "DOG",
            "CAT"
          ]
        },
        "breed": {
          "type": "string",
          "minLength": 0
        },
        "birth_date": {
          "type": "string",
          "minLength": 0,
          "format": "date"
        },
        "acquisition_date": {
          "type": "string",
          "minLength": 0,
          "format": "date"
        },
        "gender": {
          "type": "string",
          "enum": [
            "MALE",
            "FEMALE"
          ]
        },
        "weight": {
          "type": "string"
        },
        "spayed_or_neutered": {
          "type": "string",
          "minLength": 0,
          "enum": [
            "",
            "true",
            "false"
          ]
        },
        "spayed_or_neutered_date": {
          "type": "string",
          "minLength": 0,
          "format": "date"
        },
        "size": {
          "type": "string",
          "enum": [
            "TOY",
            "SMALL",
            "MEDIUM",
            "LARGE",
            "GIANT",
            ""
          ]
        },
        "microchip_id": {
          "type": "string",
          "minLength": 0
        },
        "wisdom_breed_id_1": {
          "type": "string",
          "minLength": 0
        },
        "wisdom_breed_id_2": {
          "type": "string",
          "minLength": 0
        },
        "wisdom_breed_id_3": {
          "type": "string",
          "minLength": 0
        },
        "wisdom_breed_id_4": {
          "type": "string",
          "minLength": 0
        },
        "is_first_pet": {
          "type": "string",
          "enum": [
            "true",
            "false",
            ""
          ]
        },
        "image_asset_id": {
          "type": "string",
          "description": "asset id of main pet image"
        },
        "birth_date_precision": {
          "type": "string",
          "enum": [
            "DAY",
            "MONTH",
            "YEAR"
          ]
        },
        "acquisition_date_precision": {
          "type": "string",
          "enum": [
            "DAY",
            "MONTH",
            "YEAR"
          ]
        },
        "created_at": {
          "type": "string",
          "format": "date-time",
          "title": "createdTime",
          "description": "createdTime"
        },
        "created_by_user_profile_id": {
          "type": "integer",
          "description": "created by user id"
        },
        "updated_at": {
          "type": "string",
          "format": "date-time",
          "title": "Modified Time",
          "description": "Modified Time"
        },
        "updated_by_user_profile_id": {
          "type": "integer",
          "description": "modified by user id"
        }
      },
      "title": "PetProfilePostDTO"
    },
    "PetProfileTodoGetDTO": {
      "type": "object",
      "additionalProperties": false,
      "properties": {
        "id": {
          "type": "integer",
          "title": "ID",
          "description": "ID"
        },
        "todo_id": {
          "type": "string",
          "title": "Todo ID",
          "description": "Todo ID"
        },
        "working_data": {
          "type": "object",
          "title": "user inputed data",
          "description": "user inputed data"
        },
        "created_at": {
          "type": "string",
          "format": "date-time",
          "title": "createdTime",
          "description": "createdTime"
        },
        "created_by_user_profile_id": {
          "type": "integer",
          "description": "created by user id"
        },
        "updated_at": {
          "type": "string",
          "format": "date-time",
          "title": "Modified Time",
          "description": "Modified Time"
        },
        "updated_by_user_profile_id": {
          "type": "integer",
          "description": "modified by user id"
        },
        "completed_at": {
          "type": "string",
          "format": "date-time",
          "title": "Completed Time",
          "description": "Completed Time"
        },
        "completed_by_user_profile_id": {
          "type": "integer",
          "description": "completed by user id"
        },
        "status": {
          "type": "string",
          "description": "status",
          "enum": [
            "CREATED",
            "STARTED",
            "COMPLETED"
          ]
        }
      },
      "title": "PetProfileTodoGetDTO"
    },
    "PetProfileTodoPatchDTO": {
      "type": "object",
      "additionalProperties": false,
      "properties": {
        "id": {
          "type": "integer",
          "title": "ID",
          "description": "ID"
        },
        "todo_id": {
          "type": "string",
          "title": "Todo ID",
          "description": "Todo ID"
        },
        "working_data": {
          "type": "object",
          "title": "user inputed data",
          "description": "user inputed data"
        },
        "created_at": {
          "type": "string",
          "format": "date-time",
          "title": "createdTime",
          "description": "createdTime"
        },
        "created_by_user_profile_id": {
          "type": "integer",
          "description": "created by user id"
        },
        "updated_at": {
          "type": "string",
          "format": "date-time",
          "title": "Modified Time",
          "description": "Modified Time"
        },
        "updated_by_user_profile_id": {
          "type": "integer",
          "description": "modified by user id"
        },
        "completed_at": {
          "type": "string",
          "format": "date-time",
          "title": "Completed Time",
          "description": "Completed Time"
        },
        "completed_by_user_profile_id": {
          "type": "integer",
          "description": "completed by user id"
        },
        "status": {
          "type": "string",
          "description": "status",
          "enum": [
            "CREATED",
            "STARTED",
            "COMPLETED"
          ]
        },
        "points": {
          "type": "array",
          "items": {
            "$ref": "#/definitions/UserProfilePointLedgerDTO"
          }
        }
      },
      "title": "PetProfileTodoPatchDTO"
    },
    "PetProfileAdditionalInfoDTO": {
      "type": "object",
      "additionalProperties": false,
      "required": [
        "pet_profile_id",
        "domain"
      ],
      "properties": {
        "pet_profile_id": {
          "type": "string"
        },
        "domain": {
          "type": "string",
          "enum": [
            "care",
            "vet",
            "emergencycontact",
            "health"
          ]
        },
        "data": {
          "type": "object"
        },
        "created_at": {
          "type": "string",
          "format": "date-time",
          "title": "createdTime",
          "description": "createdTime"
        },
        "created_by_user_profile_id": {
          "type": "string",
          "description": "created by user id"
        },
        "updated_at": {
          "type": "string",
          "format": "date-time",
          "title": "Updated Time",
          "description": "Updated Time"
        },
        "updated_by_user_profile_id": {
          "type": "string",
          "description": "Updated by user id"
        }
      },
      "title": "PetProfileAdditionalInfoDTO"
    },
    "PetProfileTrainingGetDTO": {
      "type": "object",
      "additionalProperties": false,
      "required": [
        "pet_profile_id",
        "module",
        "lesson"
      ],
      "properties": {
        "pet_profile_id": {
          "type": "string"
        },
        "module": {
          "type": "string"
        },
        "lesson": {
          "type": "string"
        },
        "data": {
          "type": "object"
        },
        "created_at": {
          "type": "string",
          "format": "date-time",
          "title": "createdTime",
          "description": "createdTime"
        },
        "created_by_user_profile_id": {
          "type": "string",
          "description": "created by user id"
        },
        "updated_at": {
          "type": "string",
          "format": "date-time",
          "title": "Updated Time",
          "description": "Updated Time"
        },
        "updated_by_user_profile_id": {
          "type": "string",
          "description": "Updated by user id"
        },
        "status": {
          "type": "string",
          "enum": [
            "CREATED",
            "STARTED",
            "COMPLETED"
          ]
        }
      },
      "title": "PetProfileTrainingGetDTO"
    },
    "PetProfileTrainingPatchDTO": {
      "type": "object",
      "additionalProperties": false,
      "properties": {
        "data": {
          "type": "object"
        },
        "status": {
          "type": "string",
          "enum": [
            "CREATED",
            "STARTED",
            "COMPLETED"
          ]
        }
      },
      "title": "PetProfileTrainingPatchDTO"
    },
    "PetProfileAskTrainerDTO": {
      "type": "object",
      "additionalProperties": false,
      "required": [
        "behavior",
        "background",
        "concern"
      ],
      "properties": {
        "behavior": {
          "type": "string"
        },
        "background": {
          "type": "string"
        },
        "concern": {
          "type": "string"
        }
      },
      "title": "PetProfileTrainingPatchDTO"
    },
    "PetProfileTrainingPatchReturnDTO": {
      "type": "object",
      "additionalProperties": false,
      "required": [
        "pet_profile_id",
        "module",
        "lesson"
      ],
      "properties": {
        "pet_profile_id": {
          "type": "string"
        },
        "module": {
          "type": "string"
        },
        "lesson": {
          "type": "string"
        },
        "data": {
          "type": "object"
        },
        "created_at": {
          "type": "string",
          "format": "date-time",
          "title": "createdTime",
          "description": "createdTime"
        },
        "created_by_user_profile_id": {
          "type": "string",
          "description": "created by user id"
        },
        "updated_at": {
          "type": "string",
          "format": "date-time",
          "title": "Updated Time",
          "description": "Updated Time"
        },
        "updated_by_user_profile_id": {
          "type": "string",
          "description": "Updated by user id"
        },
        "status": {
          "type": "string",
          "enum": [
            "CREATED",
            "STARTED",
            "COMPLETED"
          ]
        },
        "points": {
          "type": "array",
          "items": {
            "$ref": "#/definitions/UserProfilePointLedgerDTO"
          }
        }
      },
      "title": "PetProfileTrainingPatchReturnDTO"
    },
    "PetProfileHealthPostDTO": {
      "type": "object",
      "additionalProperties": false,
      "properties": {
        "health_at": {
          "type": "string",
          "format": "date-time"
        },
        "weight_kg": {
          "type": "number",
          "format": "float"
        },
        "height_cm": {
          "type": "number",
          "format": "float"
        }
      },
      "title": "PetProfileHealthPostDTO"
    },
    "PetProfileHealthGetDTO": {
      "type": "object",
      "additionalProperties": false,
      "properties": {
        "pet_profile_id": {
          "type": "string"
        },
        "health_at": {
          "type": "string",
          "format": "date-time"
        },
        "weight_kg": {
          "type": "number",
          "format": "float"
        },
        "height_cm": {
          "type": "number",
          "format": "float"
        },
        "created_at": {
          "type": "string",
          "format": "date-time",
          "title": "createdTime",
          "description": "createdTime"
        },
        "created_by_user_profile_id": {
          "type": "string",
          "description": "created by user id"
        },
        "updated_at": {
          "type": "string",
          "format": "date-time",
          "title": "updatedTime",
          "description": "updatedTime"
        },
        "updated_by_user_profile_id": {
          "type": "string",
          "description": "updated by user id"
        }
      },
      "title": "PetProfileHealthGetDTO"
    },
    "VetinsightGetDTO": {
      "type": "object",
      "additionalProperties": false,
      "properties": {
        "token": {
          "type": "string",
          "description": "status"
        }
      },
      "title": "VetGetDTO"
    },
    "VetGetDTO": {
      "type": "object",
      "additionalProperties": false,
      "properties": {
        "name": {
          "type": "string",
          "description": "status"
        },
        "phone": {
          "type": "string",
          "description": "phone"
        },
        "opening_hours": {
          "type": "string",
          "description": "opening_hours"
        },
        "email": {
          "type": "string",
          "description": "email"
        },
        "website": {
          "type": "string",
          "description": "website"
        },
        "address": {
          "type": "object",
          "additionalProperties": false,
          "properties": {
            "house_number": {
              "type": "string",
              "description": ""
            },
            "post_code": {
              "type": "string",
              "description": ""
            },
            "street": {
              "type": "string",
              "description": ""
            },
            "city": {
              "type": "string",
              "description": ""
            },
            "state": {
              "type": "string",
              "description": ""
            }
          }
        }
      },
      "title": "VetGetDTO"
    },
    "BreedGetDTO": {
      "type": "object",
      "additionalProperties": false,
      "properties": {
        "uuid": {
          "type": "string",
          "title": "Breed uuid",
          "description": "Breed uuid"
        },
        "name": {
          "type": "string",
          "title": "Breed name",
          "description": "Breed name"
        },
        "slug": {
          "type": "string",
          "title": "Breed slug",
          "description": "Breed slug"
        },
        "animal_type": {
          "type": "string",
          "title": "Breed animal type",
          "description": "Breed animal type",
          "enum": [
            "CAT",
            "DOG"
          ]
        },
        "source": {
          "type": "string",
          "title": "data source",
          "description": "data source",
          "enum": [
            "WISDOM_API",
            "WISDOM_API_DOG",
            "WISDOM_API_CAT",
            "WISDOM_CAT_LIST",
            "WISDOM_MIXED_BREED_LIST"
          ]
        },
        "is_mixed": {
          "type": "boolean"
        },
        "parent_breed_uuid_1": {
          "type": "string",
          "title": "Breed parent_breed_uuid_1",
          "description": "Breed parent_breed_uuid_1"
        },
        "parent_breed_uuid_2": {
          "type": "string",
          "title": "Breed parent_breed_uuid_2",
          "description": "Breed parent_breed_uuid_2"
        },
        "parent_breed_uuid_3": {
          "type": "string",
          "title": "Breed parent_breed_uuid_3",
          "description": "Breed parent_breed_uuid_3"
        },
        "parent_breed_uuid_4": {
          "type": "string",
          "title": "Breed parent_breed_uuid_4",
          "description": "Breed parent_breed_uuid_4"
        },
        "parent_breed_uuid_5": {
          "type": "string",
          "title": "Breed parent_breed_uuid_5",
          "description": "Breed parent_breed_uuid_5"
        },
        "json_doc": {
          "type": "object",
          "title": "Breed Data",
          "description": "Breed Data"
        },
        "created_at": {
          "type": "string",
          "format": "date-time",
          "title": "Created Time",
          "description": "Created Time"
        },
        "updated_at": {
          "type": "string",
          "format": "date-time",
          "title": "Updated Time",
          "description": "Updated Time"
        }
      }
    },
    "BreedPutDTO": {
      "type": "object",
      "additionalProperties": false,
      "required": [
        "uuid",
        "name",
        "slug",
        "animal_type"
      ],
      "properties": {
        "uuid": {
          "type": "string",
          "title": "Breed uuid",
          "description": "Breed uuid"
        },
        "name": {
          "type": "string",
          "title": "Breed name",
          "description": "Breed name"
        },
        "slug": {
          "type": "string",
          "title": "Breed slug",
          "description": "Breed slug"
        },
        "animal_type": {
          "type": "string",
          "title": "Breed animal type",
          "description": "Breed animal type",
          "enum": [
            "CAT",
            "DOG"
          ]
        },
        "is_mixed": {
          "type": "boolean"
        },
        "parent_breed_uuid_1": {
          "type": "string",
          "title": "Breed parent_breed_uuid_1",
          "description": "Breed parent_breed_uuid_1"
        },
        "parent_breed_uuid_2": {
          "type": "string",
          "title": "Breed parent_breed_uuid_2",
          "description": "Breed parent_breed_uuid_2"
        },
        "parent_breed_uuid_3": {
          "type": "string",
          "title": "Breed parent_breed_uuid_3",
          "description": "Breed parent_breed_uuid_3"
        },
        "parent_breed_uuid_4": {
          "type": "string",
          "title": "Breed parent_breed_uuid_4",
          "description": "Breed parent_breed_uuid_4"
        },
        "parent_breed_uuid_5": {
          "type": "string",
          "title": "Breed parent_breed_uuid_5",
          "description": "Breed parent_breed_uuid_5"
        },
        "json_doc": {
          "type": "object",
          "title": "Breed Data",
          "description": "Breed Data"
        }
      }
    },
    "BreedAdditionalInfoDTO": {
      "type": "object",
      "additionalProperties": false,
      "required": [
        "breed_id",
        "domain"
      ],
      "properties": {
        "id": {
          "type": "string"
        },
        "breed_id": {
          "type": "string"
        },
        "domain": {
          "type": "string"
        },
        "data": {
          "type": "object"
        },
        "created_at": {
          "type": "string",
          "format": "date-time",
          "title": "createdTime",
          "description": "createdTime"
        },
        "updated_at": {
          "type": "string",
          "format": "date-time",
          "title": "Updated Time",
          "description": "Updated Time"
        }
      },
      "title": "BreedAdditionalInfoDTO"
    },
    "BreedAdditionalInfoPutDTO": {
      "type": "object",
      "additionalProperties": false,
      "required": [
        "breed_id"
      ],
      "properties": {
        "breed_id": {
          "type": "string"
        },
        "data": {
          "type": "object"
        }
      },
      "title": "BreedAdditionalInfoPutDTO"
    },
    "SubscriptionPatchResponseDTO": {
      "type": "object",
      "properties": {},
      "title": "SubscriptionPatchResponseDTO"
    },
    "SubscriptionPostResponseDTO": {
      "type": "object",
      "properties": {},
      "title": "SubscriptionPatchResponseDTO"
    },
    "CustomerGetResponseDTO": {
      "type": "object",
      "properties": {},
      "title": "CustomerGetResponseDTO"
    },
    "SubscriptionCustomerPatchResponseDTO": {
      "type": "object",
      "properties": {},
      "title": "SubscriptionCustomerPatchResponseDTO"
    },
    "SubscriptionCustomerPostResponseDTO": {
      "type": "object",
      "required": [
        "clientSecret"
      ],
      "properties": {
        "clientSecret": {
          "type": "object"
        }
      },
      "title": "SubscriptionCustomerPostResponseDTO"
    },
    "SubscriptionGetResponseDTO": {
      "type": "object",
      "properties": {},
      "title": "SubscriptionPostResponseDTO"
    },
    "PromoGetResponseDTO": {
      "type": "object",
      "properties": {},
      "title": "SubscriptionPostResponseDTO"
    },
    "AdminPetGetResponseDTO": {
      "type": "object",
      "properties": {
        "profiles": {
          "type": "object"
        },
        "count": {
          "type": "number"
        }
      },
      "title": "SubscriptionPostResponseDTO"
    },
    "AdminUserGetResponseDTO": {
      "type": "object",
      "properties": {
        "profiles": {
          "type": "object"
        },
        "count": {
          "type": "number"
        }
      },
      "title": "SubscriptionPostResponseDTO"
    },
    "AdminUserDetailsGetResponseDTO": {
      "type": "object",
      "properties": {
        "details": {
          "type": "object",
          "properties": {
            "stripe_customer_info": {
              "type": "array"
            },
            "pets": {
              "type": "array"
            },
            "userDetails": {
              "type": "object",
              "description": "User profile (central or legacy). May include linnaeus_linked (boolean) when backend supports it."
            }
          }
        }
      },
      "title": "AdminUserDetailsGetResponseDTO"
    },
    "TaskDTO": {
      "type": "object",
      "required": [
        "name"
      ],
      "properties": {
        "name": {
          "type": "string",
          "enum": [
            "ASK_TRAINER_EMAIL_CRON",
            "DELETE_ORPHAN_ASSETS",
            "MPARTCLE_SYNC",
            "NPS_LIST_TO_MEDALLIA",
            "REPROCESS_DEAD_LETTERS",
            "WISDOM_BREEDS_ETL",
            "WISDOM_TO_WALTHAM_GROWTH_CAT",
            "WISDOM_TO_WALTHAM_GROWTH_DOG"
          ]
        }
      },
      "title": "TaskDTO"
    },
    "TaskGetDTO": {
      "type": "object",
      "required": [
        "id",
        "start_time",
        "name"
      ],
      "properties": {
        "id": {
          "type": "integer"
        },
        "start_time": {
          "type": "string",
          "format": "date-time"
        },
        "finish_time": {
          "type": "string",
          "format": "date-time"
        },
        "name": {
          "type": "string",
          "enum": [
            "WISDOM_BREEDS_ETL",
            "MPARTCLE_SYNC"
          ]
        },
        "success_count": {
          "type": "integer"
        },
        "error_count": {
          "type": "integer"
        }
      },
      "title": "TaskGetDTO"
    },
    "TaskPatchDTO": {
      "type": "object",
      "required": [
        "id"
      ],
      "properties": {
        "id": {
          "type": "integer"
        },
        "success_count": {
          "type": "integer"
        },
        "error_count": {
          "type": "integer"
        },
        "json_doc": {
          "type": "object"
        }
      },
      "title": "TaskPatchDTO"
    },
    "NotePatchDTO": {
      "type": "object",
      "properties": {
        "id": {
          "type": "string"
        },
        "source": {
          "type": "string"
        },
        "subject": {
          "type": "string"
        },
        "text": {
          "type": "string"
        }
      },
      "title": "NotePatchDTO"
    },
    "PreferenceNotificationGetDTO": {
      "type": "object",
      "properties": {
        "id": {
          "type": "integer"
        },
        "name": {
          "type": "string"
        },
        "notify": {
          "type": "string",
          "enum": [
            "true",
            "false"
          ]
        }
      },
      "title": "PreferenceNotificationGetDTO"
    },
    "PreferenceNotificationPatchDTO": {
      "type": "object",
      "required": [
        "id",
        "notify"
      ],
      "properties": {
        "id": {
          "type": "integer"
        },
        "notify": {
          "type": "string",
          "enum": [
            "true",
            "false"
          ]
        }
      },
      "title": "PreferenceNotificationPatchDTO"
    },
    "UserProfilePointBalanceGetDTO": {
      "type": "object",
      "properties": {
        "id": {
          "type": "integer"
        },
        "user_profile_id": {
          "type": "string"
        },
        "current_balance": {
          "type": "integer"
        },
        "lifetime_balance": {
          "type": "integer"
        },
        "created_at": {
          "type": "string",
          "format": "date-time",
          "title": "created Time",
          "description": "created Time"
        },
        "updated_at": {
          "type": "string",
          "format": "date-time",
          "title": "Modified Time",
          "description": "Modified Time"
        }
      },
      "title": "UserProfilePointBalanceGetDTO"
    },
    "UserProfilePointLedgerDTO": {
      "type": "object",
      "properties": {
        "id": {
          "type": "integer"
        },
        "user_profile_id": {
          "type": "string",
          "format": "uuid"
        },
        "pet_profile_id": {
          "type": "string",
          "format": "uuid"
        },
        "source": {
          "type": "string"
        },
        "source_section": {
          "type": "string"
        },
        "slug": {
          "type": "string"
        },
        "current_balance_delta": {
          "type": "integer"
        },
        "lifetime_balance_delta": {
          "type": "integer"
        },
        "data": {
          "type": "integer"
        },
        "created_at": {
          "type": "string",
          "format": "date-time",
          "title": "created Time",
          "description": "created Time"
        },
        "current_balance": {
          "type": "integer"
        },
        "lifetime_balance": {
          "type": "integer"
        }
      },
      "title": "UserProfilePointLedgerDTO"
    },
    "UserProfileTrainingGetDTO": {
      "type": "object",
      "additionalProperties": false,
      "required": [
        "module",
        "lesson"
      ],
      "properties": {
        "module": {
          "type": "string"
        },
        "lesson": {
          "type": "string"
        },
        "data": {
          "type": "object"
        },
        "created_at": {
          "type": "string",
          "format": "date-time",
          "title": "createdTime",
          "description": "createdTime"
        },
        "updated_at": {
          "type": "string",
          "format": "date-time",
          "title": "Updated Time",
          "description": "Updated Time"
        },
        "updated_by_user_profile_id": {
          "type": "string",
          "description": "Updated by user id"
        },
        "status": {
          "type": "string",
          "enum": [
            "CREATED",
            "STARTED",
            "COMPLETED"
          ]
        }
      },
      "title": "UserProfileTrainingGetDTO"
    },
    "UserProfileTrainingPatchDTO": {
      "type": "object",
      "additionalProperties": false,
      "properties": {
        "data": {
          "type": "object"
        },
        "status": {
          "type": "string",
          "enum": [
            "CREATED",
            "STARTED",
            "COMPLETED"
          ]
        }
      },
      "title": "UserProfileTrainingPatchDTO"
    },
    "UserProfileTrainingPatchReturnDTO": {
      "type": "object",
      "additionalProperties": false,
      "required": [
        "module",
        "lesson"
      ],
      "properties": {
        "module": {
          "type": "string"
        },
        "lesson": {
          "type": "string"
        },
        "data": {
          "type": "object"
        },
        "created_at": {
          "type": "string",
          "format": "date-time",
          "title": "createdTime",
          "description": "createdTime"
        },
        "updated_at": {
          "type": "string",
          "format": "date-time",
          "title": "Updated Time",
          "description": "Updated Time"
        },
        "status": {
          "type": "string",
          "enum": [
            "CREATED",
            "STARTED",
            "COMPLETED"
          ]
        },
        "points": {
          "type": "array",
          "items": {
            "$ref": "#/definitions/UserProfilePointLedgerDTO"
          }
        }
      },
      "title": "UserProfileTrainingPatchReturnDTO"
    },
    "NewsLetterSignUpPostDTO": {
      "type": "object",
      "required": [
        "email"
      ],
      "properties": {
        "email": {
          "type": "string",
          "format": "email",
          "minLength": 0
        },
        "partner": {
          "type": "string",
          "minLength": 0
        }
      },
      "title": "PreferenceNotificationPatchDTO"
    },
    "ContactUsPostDTO": {
      "type": "object",
      "required": [
        "from_email",
        "message",
        "subject",
        "category",
        "feedback_type",
        "validation_data"
      ],
      "properties": {
        "from_email": {
          "type": "string",
          "format": "email",
          "minLength": 0
        },
        "category": {
          "type": "string",
          "minLength": 0,
          "enum": [
            "FEEDBACK",
            "PARTNERSHIPS",
            "PRESS",
            "WRITE_FOR_US"
          ]
        },
        "message": {
          "type": "string",
          "minLength": 0
        },
        "subject": {
          "type": "string",
          "minLength": 0
        },
        "validation_data": {
          "type": "object"
        },
        "feedback_type": {
          "type": "string",
          "minLength": 0,
          "enum": [
            "THE_WILDEST",
            "FEEDBACK",
            "LITTLE_KIN"
          ]
        }
      },
      "title": "ContactUsPostDTO"
    },
    "EmailSignUpPostDTO": {
      "type": "object",
      "required": [
        "email"
      ],
      "properties": {
        "email": {
          "type": "string",
          "format": "email",
          "minLength": 0
        },
        "partner": {
          "type": "string",
          "minLength": 0,
          "enum": [
            "WWW",
            "WALMART"
          ]
        },
        "data": {
          "type": "object"
        }
      },
      "title": "PreferenceNotificationPatchDTO"
    },
    "Empty": {
      "type": "object",
      "additionalProperties": false,
      "properties": {},
      "title": "Empty"
    },
    "TimelineEntryVM": {
      "type": "object",
      "properties": {
        "entity_type": {
          "type": "string",
          "enum": [
            "NOTE",
            "ASSET"
          ]
        },
        "id": {
          "type": "string"
        },
        "uri": {
          "type": "string"
        },
        "subject": {
          "type": "string",
          "description": "subject associated with note (not applicable to assets)"
        },
        "text": {
          "type": "string",
          "description": "text associated with asset or note"
        },
        "created_at": {
          "type": "string",
          "format": "date-time"
        },
        "updated_at": {
          "type": "string",
          "format": "date-time"
        }
      },
      "title": "TimelineEntryVM"
    },
    "SignInHistoryDTO": {
      "type": "object",
      "additionalProperties": false,
      "properties": {},
      "title": "SignInHistoryDTO"
    },
    "LittleKinConsentDTO": {
      "type": "object",
      "additionalProperties": false,
      "properties": {
        "consent_id": {
          "type": "string"
        },
        "opted_in": {
          "type": "string",
          "enum": [
            "true",
            "false"
          ]
        }
      },
      "title": "SignInHistoryDTO"
    },
    "AssetMetaDataGetDTO": {
      "type": "object",
      "properties": {
        "id": {
          "type": "string"
        },
        "user_profile_id": {
          "type": "string"
        },
        "pet_profile_id": {
          "type": "string"
        },
        "uploader_user_profile_id": {
          "type": "string"
        },
        "uuid": {
          "type": "string"
        },
        "content_type": {
          "type": "string"
        },
        "location": {
          "type": "string"
        },
        "source": {
          "type": "string"
        },
        "text": {
          "type": "string"
        },
        "parent_asset_id": {
          "type": "string"
        },
        "variant": {
          "type": "string",
          "enum": [
            "MEDIUM",
            "SMALL"
          ]
        },
        "crop_left_offset": {
          "type": "integer",
          "description": "crop coords specified to apply to original image"
        },
        "crop_top_offset": {
          "type": "integer",
          "description": "crop coords specified to apply to original image"
        },
        "crop_width": {
          "type": "integer",
          "description": "crop coords specified to apply to original image"
        },
        "crop_height": {
          "type": "integer",
          "description": "crop coords specified to apply to original image"
        },
        "created_at": {
          "type": "string",
          "format": "datetime"
        }
      },
      "title": "AssetMetaDataGetDTO"
    },
    "AssetPutDTO": {
      "type": "object",
      "properties": {
        "user_profile_id": {
          "type": "string"
        },
        "pet_profile_id": {
          "type": "string"
        },
        "is_primary_image": {
          "type": "string",
          "enum": [
            "true",
            "false"
          ]
        }
      },
      "title": "AssetPutDTO"
    },
    "AuthSignUpVM": {
      "type": "object",
      "additionalProperties": false,
      "required": [
        "first_name",
        "last_name",
        "email",
        "password",
        "validation_data",
        "source"
      ],
      "properties": {
        "first_name": {
          "type": "string"
        },
        "last_name": {
          "type": "string"
        },
        "email": {
          "type": "string",
          "format": "email"
        },
        "mobile_phone": {
          "type": "string"
        },
        "password": {
          "type": "string"
        },
        "recovery_question": {
          "type": "string"
        },
        "recovery_answer": {
          "type": "string"
        },
        "validation_data": {
          "type": "object"
        },
        "source": {
          "type": "string",
          "enum": [
            "THE_WILDEST"
          ]
        },
        "partner": {
          "type": "string"
        },
        "littlekinSignup": {
          "type": "boolean"
        },
        "optin": {
          "type": "boolean",
          "description": "User consent for marketing communications. Defaults to true if not provided."
        }
      },
      "title": "AuthSignUpVM"
    },
    "AuthPatchVM": {
      "type": "object",
      "additionalProperties": false,
      "required": [
        "first_name",
        "last_name",
        "email",
        "source"
      ],
      "properties": {
        "first_name": {
          "type": "string"
        },
        "last_name": {
          "type": "string"
        },
        "email": {
          "type": "string",
          "format": "email"
        },
        "mobile_phone": {
          "type": "string"
        },
        "source": {
          "type": "string",
          "enum": [
            "THE_WILDEST"
          ]
        }
      },
      "title": "AuthPatchVM"
    },
    "AuthAssignPostVM": {
      "type": "object",
      "additionalProperties": false,
      "required": [
        "email"
      ],
      "properties": {
        "email": {
          "type": "string",
          "format": "email"
        },
        "source": {
          "type": "string",
          "enum": [
            "THE_WILDEST"
          ]
        }
      },
      "title": "AuthAssignPostVM"
    },
    "AuthChangePasswordDTO": {
      "type": "object",
      "required": [
        "old_password",
        "new_password"
      ],
      "properties": {
        "old_password": {
          "type": "string"
        },
        "new_password": {
          "type": "string"
        }
      },
      "title": "AuthChangePasswordDTO"
    },
    "AuthForgotPasswordDTO": {
      "type": "object",
      "required": [
        "email",
        "validation_data"
      ],
      "properties": {
        "email": {
          "type": "string"
        },
        "validation_data": {
          "type": "object"
        }
      },
      "title": "AuthChangePasswordDTO"
    },
    "AuthMobileForgotPasswordDTO": {
      "type": "object",
      "required": [
        "email"
      ],
      "properties": {
        "email": {
          "type": "string"
        }
      },
      "title": "AuthChangePasswordDTO"
    },
    "AuthRecoveryTokenDTO": {
      "type": "object",
      "required": [
        "email",
        "recovery_token"
      ],
      "properties": {
        "email": {
          "type": "string"
        },
        "recovery_token": {
          "type": "string"
        }
      },
      "title": "AuthRecoverPasswordDTO"
    },
    "IterableWebhook": {
      "type": "object",
      "additionalProperties": false,
      "required": [
        "ActionTrackerID",
        "Oid",
        "Amount",
        "Reason"
      ],
      "properties": {
        "ActionTrackerID": {
          "type": "string"
        },
        "Oid": {
          "type": "string"
        },
        "Amount": {
          "type": "string"
        },
        "Reason": {
          "type": "string"
        }
      },
      "title": "IterableWebhook"
    },
    "AuthRecoverPasswordDTO": {
      "type": "object",
      "required": [
        "email",
        "recovery_token",
        "new_password"
      ],
      "properties": {
        "email": {
          "type": "string"
        },
        "recovery_token": {
          "type": "string"
        },
        "new_password": {
          "type": "string"
        }
      },
      "title": "AuthRecoverPasswordDTO"
    },
    "PhotoContestEntryGetDTO": {
      "type": "object",
      "required": [
        "id",
        "contest_slug",
        "username",
        "asset_id",
        "created_at",
        "status",
        "created_by_user_profile_id"
      ],
      "properties": {
        "id": {
          "type": "string",
          "format": "uuid"
        },
        "contest_slug": {
          "type": "string"
        },
        "username": {
          "type": "string"
        },
        "user_profile_photo_asset_id": {
          "type": "string",
          "format": "uuid"
        },
        "pet_profile_id": {
          "type": "string",
          "format": "uuid"
        },
        "pet_name": {
          "type": "string"
        },
        "pet_profile_photo_asset_id": {
          "type": "string",
          "format": "uuid"
        },
        "asset_id": {
          "type": "string"
        },
        "caption": {
          "type": "string",
          "format": "uuid"
        },
        "status": {
          "type": "string",
          "enum": [
            "INREVIEW",
            "REJECTED",
            "READY",
            "LOCKED",
            "WINNER"
          ]
        },
        "created_at": {
          "type": "string",
          "format": "date-time",
          "title": "createdTime",
          "description": "createdTime"
        },
        "created_by_user_profile_id": {
          "type": "string",
          "description": "created by user id"
        },
        "updated_at": {
          "type": "string",
          "format": "date-time",
          "title": "updatedTime",
          "description": "updatedTime"
        },
        "updated_by_user_profile_id": {
          "type": "string",
          "description": "updated by user id"
        }
      },
      "title": "PhotoContestEntryGetDTO"
    },
    "PhotoContestEntryPostDTO": {
      "type": "object",
      "required": [
        "asset_id"
      ],
      "properties": {
        "asset_id": {
          "type": "string",
          "format": "uuid"
        },
        "pet_profile_id": {
          "type": "string",
          "format": "uuid"
        },
        "caption": {
          "type": "string"
        }
      },
      "title": "PhotoContestEntryPostDTO"
    },
    "PhotoContestEntryPutStatus": {
      "type": "object",
      "required": [
        "ready",
        "reject"
      ],
      "properties": {
        "ready": {
          "type": "array",
          "items": {}
        },
        "reject": {
          "type": "array",
          "items": {
            "$ref": "#/definitions/PhotoContestEntryPutItem"
          }
        }
      },
      "title": "PhotoContestEntryPutStatus"
    },
    "PhotoContestEntryPutItem": {
      "type": "object",
      "required": [
        "id",
        "note"
      ],
      "properties": {
        "id": {
          "type": "string"
        },
        "note": {
          "type": "string"
        }
      },
      "title": "PhotoContestEntryPutItem"
    },
    "PhotoContestEntryPutWinner": {
      "type": "object",
      "required": [
        "winners"
      ],
      "properties": {
        "winners": {
          "type": "array",
          "items": {}
        }
      },
      "title": "PhotoContestEntryPutWinner"
    },
    "PhotoContestVotePostDTO": {
      "type": "object",
      "required": [
        "photo_contest_entry_id"
      ],
      "properties": {
        "photo_contest_entry_id": {
          "type": "string",
          "format": "uuid"
        }
      },
      "title": "PhotoContestVotePostDTO"
    },
    "KinshipSubscriptionDTO": {
      "type": "array",
      "items": {
        "type": "object",
        "required": [
          "externalSubId",
          "kinshipId",
          "kinshipPetId",
          "email",
          "firstName",
          "lastName",
          "type",
          "orderId",
          "orderStatus",
          "pet"
        ],
        "properties": {
          "externalSubId": {
            "type": "string"
          },
          "kinshipId": {
            "type": "string",
            "format": "uuid"
          },
          "kinshipPetId": {
            "type": "string",
            "format": "uuid"
          },
          "email": {
            "type": "string",
            "format": "email"
          },
          "firstName": {
            "type": "string"
          },
          "lastName": {
            "type": "string"
          },
          "application": {
            "type": "string"
          },
          "startDate": {
            "type": "string"
          },
          "endDate": {
            "type": "string"
          },
          "type": {
            "type": "string"
          },
          "orderId": {
            "type": "string"
          },
          "orderStatus": {
            "type": "string"
          },
          "packageTracking": {
            "type": "string"
          },
          "rainwalkId": {
            "type": "string"
          },
          "pet": {
            "type": "object"
          }
        }
      },
      "title": "KinshipSubscriptionDTO"
    },
    "RainwalkSubscriptionLinkDTO": {
      "type": "string",
      "required": [
        "link"
      ],
      "properties": {
        "link": {
          "type": "string"
        }
      },
      "title": "RainwalkSubscriptionLinkDTO"
    }
  }
}