Ofcourt Privacy Policy
Ofcourt is a tennis app. You can record a video of yourself playing tennis with your phone, or choose a video from your photo library and upload it. We analyze the video with AI and give you a report and a replay.
This Policy explains what information we collect, why we collect it, where it is stored, how long it is kept, who processes it on our behalf, and what you can do.
1. Who We Are
- Ofcourt is operated by Sanya Yazhou Zhiyan Technology Co., Ltd. ("we", "us" or "our").
- Unified Social Credit Code: 91460000MAKCNH0N47
- Registered address: Room 321, 3rd Floor, Building 1, Cultural and Creative Industry Park, High-tech Zone, Yazhou Bay Science and Technology City, Yazhou District, Sanya, Hainan Province (centralized office area)
- Contact email: support@ofcourt.com
2. What This Policy Covers
- This Policy applies to the Ofcourt iOS app and the servers it connects to.
- The current version of the app provides these features: login with a phone number or email; profile card, following, blocking and reporting; recording video in the app or choosing video from your photo library, uploading it for AI analysis and viewing reports and replays; daily tasks; settings.
- Pages or services of other companies that you open from the app (for example, sharing through the system share sheet to another app) are governed by that company's rules.
3. What We Collect and What We Use It For
3.1 Registration and Login
- You log in with a phone number or an email address. We receive that number or address to send you verification codes and to recognize your account.
- You can choose phone numbers from these regions: Chinese mainland, Hong Kong SAR, Macao SAR, Malaysia, Singapore, United States, Canada and Japan.
- A verification code is valid for 5 minutes. We store only an irreversible digest of the code, not the code itself.
- When you request a verification code, we record your IP address and the time of the request. These are used to limit how many codes can be sent and to decide whether to require a human verification check first.
- You may set a login password or not. We store only a digest of the password computed with the argon2id algorithm, not the password itself.
- After you log in, the app stores your login credential in the iPhone Keychain. Our server stores only a digest of this credential, the login method and the time.
- A login credential expires after 60 days without use, and the 60 days restart each time it is used.
- Before a verification code is sent, you must tick "I have read and agree to the Terms of Service and the Privacy Policy". Without ticking it, no code can be sent.
- Ticking the box means you agree to everything in this Policy, including AI analysis of the videos you upload and the use of empty-court frames with people and balls removed to improve our analysis algorithms (both in Section 3.5), and that part of the processing takes place outside mainland China (Section 6). The app does not ask you again separately before you upload a video.
3.2 Onboarding and Profile Card
After your first login, the app asks you to fill in the following:
| Information | Required | Used for |
|---|---|---|
| Nickname (1 to 20 characters) | Required | Shown on your profile card |
| Avatar | Optional | Shown on your profile card |
| Handedness (left or right) | Can be skipped | Telling forehand from backhand in reports |
| How you usually play (matches or rallying) | Can be skipped | Which analysis scenario is selected by default when you record |
| NTRP self-rating (1.0 to 7.0) | Can be skipped | Shown on your profile card |
- An avatar can be chosen from your photo library, or taken under "Me". Before upload, the app crops the image to a square, scales it to 512 x 512 pixels and saves it as JPEG.
- At registration, the system randomly assigns you an 8-digit username. You can change it to 3 to 16 letters, digits or underscores. After you have changed it yourself once, you must wait 180 days before changing it again.
3.3 Following, Blocking and Reporting
- We record whom you follow and who follows you, including the time of following.
- Following does not require the other person's consent. We do not notify anyone that you followed them.
- You can block a user from the menu on his or her profile card. We record whom you blocked and when. Blocking also ends any follow relationship between you. We do not notify the blocked person.
- You can report a user from the menu on his or her profile card. We record: who reported, whom they reported, the reason you chose (harassment or abuse, impersonation, inappropriate avatar, nickname or username, spam or advertising, other), the description you wrote (at most 200 characters, optional), the time of the report, and the reported person's nickname, username and avatar at that moment.
- If you report the same person again while your previous report is still unprocessed, the new reason and description overwrite the previous ones; no separate record is created.
- Reports are reviewed and handled by our operations staff. We do not notify the reported person, and we do not separately notify you of the outcome.
3.4 Recording and Uploading Video
Recording in the app
- The app uses the camera to record the picture and the microphone to record the sound on the court. You can record without microphone permission; the recording then has no sound.
- Recorded video is 1920 x 1080 at 30 frames per second.
- While the camera is open and before recording starts, the app captures one 640 x 360 image per second and sends it to us, to find the four corners of the tennis court and prompt you on how to position your phone. Once you tap Start, the app stops capturing these images.
- These images are forwarded through our server to the analysis service, processed only in memory, and are not written to disk or stored.
Choosing from the photo library
- The first time you choose a video from the photo library, the app asks whether to allow it to read your photo library (see Section 4). Whatever you choose, the system photo picker then opens and you can pick a video as usual.
- If you allow it, the app reads only the width, height and one thumbnail (long side no more than 720 pixels) of the video you selected, in order to judge before copying the video into the app whether it was shot in portrait orientation. A portrait video cannot be analyzed, and the app tells you right away to pick another one without waiting for the copy to finish.
- This thumbnail exists only in the app's cache on your phone, is deleted when you close the page or select a different video, and is not uploaded. This step does not read the time or location of capture, nor other photos and videos in your library.
- If you do not allow it, or you allow only some photos and the selected video is not among them, the app cannot read the width, height and thumbnail, and checks as usual after copying the selected video into the app.
- After the video is copied into the app, the app reads its duration, resolution, frame rate and capture time on your phone.
- The app then captures 12 evenly spaced images from the video (long side 1280 pixels) and sends them to us to check the camera position, the picture and the players. These 12 images are processed only in memory and are not stored.
- After you tap "Upload full video", the app first removes the capture location, phone model and system version from the video file, keeps only the capture time, and then uploads the video without compressing the picture.
- Your avatar is re-compressed into a new image on the phone, so the capture location and similar information in the original image are not uploaded.
Information received together with the upload
- Video duration, file size, picture width and height, capture time, whether the video was recorded in the app or chosen from the photo library, and the analysis scenario you selected.
- The capture time is used to detect whether you uploaded the same video twice.
Other people in your video
- Your video may show opponents, hitting partners, coaches or passers-by, and may also capture their voices. Please obtain their consent before uploading. See the Terms of Service for the specific requirements.
3.5 AI Analysis
- Uploading a video triggers AI analysis. In the "Me" record list you can cancel the analysis of a video; the video remains and the replay can still be viewed, and you can re-analyze it later.
- The analysis service first transcodes the video into replay clips at two quality levels.
- It then finds the ball, the players and the court in the picture, and computes rallies and, for each shot, the stroke type, spin, contact point, landing point, whether it was out, and ball speed.
- For tennis singles, the analysis service also has to tell which of the two people in the picture is which ("player identification" below). For player identification, the analysis service crops full-body images of the two players from the video ("portrait images" below), at most 6 per match. Portrait images show people.
- The first time you open a singles match, the app asks you to tap, on a paused replay frame, which person is you, and may also let you choose by looking at the portrait images. You must choose before you can open the match details. If identification did not succeed, you are not asked.
- We record your choice and the change-of-ends moments you mark.
- To judge whether the same player appears before and after a rally, the analysis service stitches the players' full-body images into one image ("identification montage") and sends it to the vision model of a third party, DeepSeek, for processing. The identification montage is not blurred and is not shown to you; DeepSeek receives only the identification montage and does not receive your account information.
- You can change the analysis scenario of a match (for example, from "Rally" to "Match"). After the change, the whole video is analyzed again.
- What we hand to the analysis service is the video and the match number, not your phone number, email or nickname.
- Analysis results are estimated by algorithms and may be inaccurate.
Using empty-court frames to improve the analysis algorithms
- After a video has been analyzed, we extract from it empty-court frames with people and balls removed, together with the computed camera height, the camera's distance from the court and the focal length, and use them to generate synthetic training data to improve the analysis algorithms.
- Frames showing people do not enter the training data; neither the players nor anyone else in the picture does.
- This is done by default, and the app currently has no switch to turn it off. If you have questions, you can email support@ofcourt.com.
3.6 Daily Tasks and Analysis Quota
- Based on the videos you upload, we compute your daily task progress, the analysis time rewarded and the quota used so far this month.
- These records are linked to your account.
3.7 Settings and Content Stored on Your Phone
- The following are stored only on your phone and are not uploaded: whether to upload over cellular data, whether to delete the video on the phone after upload, whether to save recordings to Photos, appearance (follow system, light, dark), and the analysis scenario you selected last time.
- Videos waiting to be uploaded are stored in the app's own folder. After the upload completes, they are kept for 7 days by default and then deleted; you can change this in Settings to delete them as soon as the upload completes.
- If you turn on "Save a copy to Photos after recording", a video recorded in the app is also saved to the system photo library. That copy is managed by you and we cannot delete it.
- When you share your profile card, the share image is generated on your phone and sent by you through the system share sheet. You choose where it goes.
- In a video's report you can select rallies to export: the app combines the replay clips and the analysis overlay into a video on your phone, saves it to Photos, and you can also send it through the system share sheet. Only the person who uploaded the video can export. Clips not yet fully exported are deleted from the phone after 7 days. An exported video may show other people on the court; once saved to Photos or sent, it is managed by you and we cannot delete it.
3.8 Information Generated Automatically During Use
- When your app connects to our server, the server records the IP address, time, the interface accessed and the app version, to troubleshoot faults and detect attacks. These access logs are kept for 186 days.
- If you agree, under iPhone "Settings > Privacy & Security > Analytics & Improvements", to share with app developers, Apple provides us with Ofcourt crash reports.
- The app does not integrate any third-party error reporting tool.
3.9 What We Do Not Collect at Present
- The current version of the app does not read your location and does not request location permission.
- It does not read your contacts.
- It does not use the advertising identifier and does not track you across apps.
- The app contains no third-party analytics, advertising or push SDKs.
4. Phone Permissions
| Permission | When you are asked | Used for | If not granted | Explanation in the system dialog |
|---|---|---|---|---|
| Camera | When you open the recording page; when you choose "Take photo" under "Me" to change your avatar | Recording video; taking an avatar photo | You cannot record video or take an avatar photo; other features work as usual | "Ofcourt uses the camera to record videos of you playing on court for analysis." |
| Microphone | When you open the recording page, asked together with the camera | Recording the sound on the court | Recording works as usual, without sound | "Ofcourt uses the microphone to record the sound on court along with the video." |
| Add to Photos | When you turn on "Save a copy to Photos after recording" in Settings; when you first export a rally video | Saving recorded videos and exported rally videos to Photos | They cannot be saved to Photos; videos still upload as usual, and exported videos can be sent through the share sheet | "Recorded or exported videos are saved to your photo library." |
| Read Photos | When you first choose a video from the photo library. Choosing an avatar uses the system picker and does not ask for this permission | Reading the width, height and one thumbnail of the selected video, so that the app can warn you right away, without waiting for the copy to finish, that the video was shot in portrait orientation | You can still choose videos; the app checks after copying the video into the app | "When you choose a video, its width and height are read so you can be told right away to pick another if it was shot in portrait orientation. You can still choose videos if you do not allow this." |
- When the system asks whether to allow reading your photos, the dialog says "would like full access to your photo library". This is fixed wording from iPhone that we cannot change. You can choose "Limit access" and allow only some photos. The app actually reads only the one video you select; see Section 3.4 for what is read.
- You can turn these permissions off at any time in iPhone "Settings > Ofcourt". Once turned off, we stop using the corresponding feature; content already uploaded is not affected.
5. Who Can See Your Information
- Any logged-in Ofcourt user can see your profile card: username, nickname, avatar, NTRP self-rating, number of followings, number of followers and consecutive days of play.
- Consecutive days of play are counted by whether you finished uploading a video each day. Others can tell from this number whether you have been uploading videos every day recently.
- Any logged-in Ofcourt user can see your following list and follower list. The list shows each person's nickname, avatar and NTRP self-rating.
- There are currently no private accounts. Users also cannot be searched by nickname or username in the app.
- You can block other users. After blocking, the two of you cannot see each other's profile cards, following lists, follower lists or public records, and cannot follow each other; when viewing others' following and follower lists, the other person no longer appears either. To the blocked person, it looks the same as "no such user" or "this record is not public".
- Your phone number, email, handedness and how you usually play are not shown to others.
- Your avatar image is placed at a publicly accessible address; anyone who has the address can open it.
- Each video you upload can be set to "Only me" or "Public". If you have not changed the default setting, new records are "Only me".
- Venue staff cannot see the videos you upload. Our operations staff can see only the progress of the analysis queue; they cannot see who uploaded a video and cannot view replays.
- When you report someone, or someone reports you, our operations staff can see the reason and description of the report, the username and nickname of the reporter, the username, nickname and avatar of the reported person, and the account status of both.
- For a record set to "Public", once the report is produced, any logged-in Ofcourt user can see it on your profile page, read the same analysis report that you see, and view the replay within the replay period. The replay shows other people on the court. Others cannot see the portrait images, nor the "this is me" choice you made.
- A record set to "Only me" can be seen only by you. Portrait images can at all times be seen only by you.
- After you request account deletion, others who look at your profile card see only "Account deleted", and you no longer appear in anyone's following or follower list.
6. Where Your Information Is Stored
- Account, profile, follow relationships, tasks and quota, and analysis reports are stored in our database at Tencent Cloud Guangzhou.
- Avatars are stored in object storage at Tencent Cloud Guangzhou and distributed through Tencent Cloud EdgeOne.
- Videos, replay clips, analysis result files and portrait images are stored in video storage at Tencent Cloud Guangzhou. The video storage is not publicly accessible.
- The database is backed up once a day. Backups are encrypted and stored in two copies: one at Tencent Cloud Shanghai and one at Alibaba Cloud Hangzhou.
- Logs are stored at Tencent Cloud Guangzhou.
- The identification montage used for identification review is processed by DeepSeek, whose service is located in mainland China.
Part of the processing takes place outside mainland China:
- Our analysis scheduling service is located in Hong Kong SAR, China. The court-framing images and the 12 pre-check images are sent to it through our server for processing. It also schedules analysis tasks and stores the video used for analysis (the transcoded version), analysis results, portrait images and identification montages: the video used for analysis is deleted 7 days after the task ends, and the rest is kept for 30 days.
- Analysis of the whole video is performed on servers of ours or of service providers we engage, and these servers may be outside mainland China.
- When the analysis machines are busy, analysis may be handed to the cloud servers of Modal; the region of those servers is arranged by Modal.
- These analysis servers read your video from the video storage in Guangzhou, download it to the local machine for processing, and delete the local copy after delivering the results.
- The empty-court frames and camera parameters in Section 3.5 are stored on, and the training data generated from them is produced on, the servers described above, which may be outside mainland China.
- When you tick to agree to this Policy on the login page, you agree to the processing outside mainland China described above. If you do not agree, please do not upload videos; videos already uploaded can be deleted in the "Me" record list.
7. How Long We Keep It and How Deletion Works
| Information | Retention period |
|---|---|
| Phone number, email, password digest, nickname, username, avatar, follow relationships | Until you delete your account. Deleted when the 7-day cooling-off period after deletion ends |
| Handedness, how you usually play, NTRP self-rating | Until you delete your account. Deleted when the 7-day cooling-off period after deletion ends |
| Block records | Until you unblock or delete your account. When the 7-day cooling-off period after deletion ends, both the blocks you placed on others and the blocks others placed on you are deleted |
| Report records | Kept indefinitely, not deleted by time. When the reporter's account is purged, the description he or she wrote is cleared and the record remains; when the reported person's account is purged, the nickname, username and avatar recorded at the moment of the report are erased and the record remains |
| Verification code records (number, IP, time) | 30 days |
| Login credential digest | 1 day after expiry or logout |
| Failed password attempt records (including phone number or email) | No more than 3 days; deleted immediately upon a successful password login |
| Original video (on the server) | Deleted 1 day after replay clips are produced; videos rejected by the analysis service are also deleted |
| Replay clips, analysis result files, portrait images | Deleted 31 days after being written. A replay can be viewed for 30 days from the day it becomes available |
| Video used for analysis on the analysis service | Deleted 7 days after the task ends |
| Analysis results, portrait images and identification montages on the analysis service | 30 days |
| Empty-court frames and camera parameters (Section 3.5) | Kept only for as long as needed to improve the analysis algorithms; they contain no frames of people |
| Analysis reports | Kept until you delete your account |
| Task completion and reward records, quota top-up records | Until you delete your account. Deleted when the 7-day cooling-off period after deletion ends |
| Court-framing images and pre-check images | Not stored |
| Access logs | 186 days |
| Database backups | 35 days. Information you delete disappears from backups within 35 days at the latest |
| Videos on your phone waiting to be uploaded | Deleted 7 days after upload completes; you can change this to delete them as soon as the upload completes |
- After you log out, videos on the phone that have not finished uploading pause and stay on the phone; when you log in again with the same account, they continue uploading, and they cannot be seen when you log in with a different account. When you delete your account, the app deletes the videos on the phone that have not finished uploading and those awaiting deletion after upload.
- In the "Me" record list you can delete a video. After deletion, the video's replay clips, analysis results, report, portrait images and cover are deleted, and we keep only its duration and date to calculate this month's quota. Copies on the analysis service are deleted within the periods in the table above.
8. Who Processes It for Us
- We use the services of the following companies to store and process your information. The full list is in Schedule 2.
- Tencent Cloud: servers, database, object storage, network acceleration, logs, SMS, human verification.
- Alibaba Cloud: some verification-code SMS, database backups.
- Feishu enterprise email: sending email verification codes from noreply@ofcourt.com.
- Modal: video analysis when the analysis machines are busy.
- The provider of our servers in Hong Kong SAR, China: running the analysis scheduling service.
- DeepSeek: judging whether the same player appears before and after a rally (identification review).
- Our analysis service is called Orrex and is also operated by Sanya Yazhou Zhiyan Technology Co., Ltd.
- When you send your profile card to another app (for example WeChat) through the system share sheet, that image is handed by you to the recipient and does not pass through us.
- We do not sell your personal information.
- When a competent authority requires us by law to provide your information, we provide it as the law requires; where the law permits, we will tell you.
9. What You Can Do
View and correct
- Change your avatar, nickname, username and NTRP self-rating on your profile card under "Me".
- Change your handedness and how you usually play in Settings.
- In "Settings > Account and security", view your bound phone number and email (middle digits masked), and rebind or unbind them. At least one of the phone number and email must remain.
- In "Settings > Account and security", set or change your login password. When you change the password, the verification code is sent to your bound phone number or email.
Delete
- After you unfollow someone, that follow record is deleted immediately.
- In "Settings > Blocked users", unblock someone; that block record is deleted immediately. After unblocking, the previous follow is not restored.
- While a video is still uploading, you can cancel it. After cancellation, the part already uploaded is deleted.
- In the "Me" record list, delete a video and its report. Deletion cannot be undone and does not refund quota.
Delete your account
- In "Settings > Account and security", tap "Delete account", then tap "Delete".
- Your login on all devices becomes invalid immediately.
- The next 7 days are a cooling-off period. If you log in during this period with your original phone number or email, the deletion is canceled and the account and follow relationships are restored as they were.
- During the cooling-off period, others who look at your profile card see only "Account deleted" and cannot follow you. Your username is still reserved for you.
- Within 1 hour after the 7 days are over, we delete your bound phone number and email, follow relationships and block records (both those you placed on others and those others placed on you), clear your nickname, username, avatar and password, and delete your avatar image. In records where others reported you, your nickname, username and avatar are also erased; descriptions you wrote when reporting others are cleared.
- At the same time, we delete all the videos, replay clips, analysis result files, reports and portrait images you uploaded, and ask the analysis service to delete at once the portrait images, identification montages and identification results it holds. Tasks still being analyzed are withdrawn first and then deleted. If deletion fails, it is retried every minute for up to 24 hours. The video used for analysis and the analysis results on the analysis service are not deleted at once but within the periods in Section 7, at the latest 30 days after the task ends.
- After the purge, the same phone number can register again, but it will be a new account and the original data cannot be retrieved.
- Copies in database backups disappear within 35 days at the latest.
Withdraw permissions
- Turn off camera, microphone and photo permissions in iPhone "Settings > Ofcourt".
Record visibility
- In the "Me" record list, you can change each record between "Public" and "Only me", and set which one new records use by default.
Obtain a copy
- You can email us to request a copy of your personal information, and we will send it to you within 15 working days.
Blocking and reporting
- You can block or report a user from the menu on his or her profile card.
Contact us
- For questions or complaints, email support@ofcourt.com. We reply within 15 working days.
10. Minors
- The current version of the app does not ask your age and does not differentiate features by age.
11. How We Protect Your Information
- The production app connects to our servers only through HTTPS encryption.
- Passwords, verification codes and login credentials are stored on the server only as digests.
- The video storage is not publicly accessible. Read addresses for replays and portrait images are issued only to the uploader of that match and expire after 4 hours.
- We cannot guarantee that information is absolutely secure. When a security incident that may affect you occurs, we will tell you, through in-app messages, SMS or email, what happened, the possible impact and what you can do.
12. How This Policy Is Updated
- When we change this Policy, we update the version number and date above.
- After a change, the next time you open the app we show a pop-up telling you what changed.
- When the types of information we collect, the purposes, the parties that process it, or the regions where it is processed change, we process your information under the new Policy only after you tap "Agree".
13. Contact Us
- Company: Sanya Yazhou Zhiyan Technology Co., Ltd.
- Unified Social Credit Code: 91460000MAKCNH0N47
- Address: Room 321, 3rd Floor, Building 1, Cultural and Creative Industry Park, High-tech Zone, Yazhou Bay Science and Technology City, Yazhou District, Sanya, Hainan Province (centralized office area)
- Email: support@ofcourt.com
Schedule 1: List of Personal Information Collected
| Type | Specific information | Purpose | When collected | Required |
|---|---|---|---|---|
| Account | Phone number or email | Login, account recovery, receiving verification codes when changing password | At login and binding | Required (either one) |
| Account | Login password (digest only) | Logging in with a password | When you set a password | Not required |
| Account | Username (assigned by the system, changeable) | Public name on the profile card | Generated automatically at registration | Generated automatically |
| Profile | Nickname | Shown on the profile card | Onboarding, editing profile | Required |
| Profile | Avatar | Shown on the profile card | Onboarding, editing profile | Not required |
| Profile | Handedness | Telling forehand from backhand in reports | Onboarding, Settings | Not required |
| Profile | How you usually play | Default analysis scenario when recording | Onboarding, Settings | Not required |
| Profile | NTRP self-rating | Shown on the profile card | Onboarding, editing profile | Not required |
| Social | Follow relationships, time of following | Following, following list, follower list | When you follow someone | Not required |
| Social | Block records, time of blocking | Blocking, blocked users list | When you block someone | Not required |
| Social | Report records (reason, description, time, and the reported person's nickname, username and avatar at that time) | Manual handling of reports | When you report someone | Not required |
| Video | Video picture and sound | AI analysis, replay | When you upload a video | Required when using analysis |
| Video | Video duration, file size, width and height, capture time, recording method, analysis scenario | Calculating quota, detecting duplicate uploads, analysis | When you upload a video | Required when using analysis |
| Video | Court-framing images (one per second, not stored) | Prompting how to position the phone | After opening the recording page, before recording starts | Required when using recording |
| Video | Pre-check images (12, not stored) | Checking the picture before upload | After choosing a video from the photo library | Required when uploading from the photo library |
| Analysis results | Rallies, per-shot data, player positions and trajectories | Producing the report | When analysis completes | Generated automatically |
| Analysis results | Portrait images (people), identification montage (people, not shown to you), your "this is me" choice, change-of-ends moments | Telling which shots in the report were yours | After singles analysis completes, and when you choose | Images are generated automatically; you must choose "this is me" before viewing singles details |
| Analysis results | Empty-court frames with people and balls removed, camera parameters (height, distance from the court, focal length) | Generating synthetic training data to improve the analysis algorithms | After analysis completes | Generated automatically |
| Usage records | Daily task progress and rewards, quota usage, consecutive days of play | Daily tasks, quota | After you upload videos | Generated automatically |
| Device and network | IP address | Limiting code-sending frequency, human verification, access logs | When requesting a verification code; each time the app connects to the server | Collected automatically |
| Device and network | Login credential digest, login method, login time | Keeping you logged in | At login | Collected automatically |
| Device and network | App version | Troubleshooting | Each time the app connects to the server | Collected automatically |
| Permissions | Camera, microphone, Add to Photos, Read Photos | See Section 4 | See Section 4 | Not required |
Schedule 2: List of Third-Party Sharing
| Third party | Purpose | Information processed | Method | Region | Their privacy policy |
|---|---|---|---|---|---|
| Tencent Cloud (Tencent Cloud Computing (Beijing) Co., Ltd.) | Servers, database, object storage, EdgeOne network acceleration, log service | All information in this service | We entrust it to store and transmit | Chinese mainland (Guangzhou, Shanghai) | https://cloud.tencent.com/document/product/301/11470 |
| Tencent Cloud SMS | Sending verification-code SMS | Phone number, verification code | API call | Chinese mainland | Same as Tencent Cloud |
| Tencent Cloud Captcha (Tianyu) | Human verification | Human verification ticket, IP address | API call | Chinese mainland | Same as Tencent Cloud |
| Alibaba Cloud (Alibaba Cloud Computing Co., Ltd.) | Sending a small share of verification-code SMS; storing encrypted database backups | Phone number, verification code; encrypted backups | API call; we entrust it to store | Chinese mainland (Hangzhou) | https://terms.aliyun.com/legal-agreement/terms/suit_bu1_ali_cloud/suit_bu1_ali_cloud201902141711_54837.html |
| Feishu (Beijing Feishu Technology Co., Ltd.) | Sending email verification codes | Email address, verification code | We send through the sending service of Feishu enterprise email | Chinese mainland | As published in Feishu's privacy policy |
| Modal (Modal Labs, Inc.) | Video analysis when the analysis machines are busy | Video | Its servers read from our video storage over an encrypted connection using time-limited addresses, and delete after computing | Arranged by Modal, possibly outside mainland China | https://modal.com/legal/privacy-policy |
| Our selected cloud provider in Hong Kong SAR, China | Running our analysis scheduling service | Court-framing images and pre-check images (in memory only); video used for analysis, analysis results, portrait images, identification montages, analysis task information | We run our own programs on its servers | Hong Kong SAR, China | As published in that provider's privacy policy |
| DeepSeek (Hangzhou DeepSeek Artificial Intelligence Basic Technology Research Co., Ltd.) | Judging whether the same player appears before and after a rally (identification review) | Identification montage (an image stitched from full-body images of the players) | API call | Chinese mainland | https://cdn.deepseek.com/policies/zh-CN/deepseek-privacy-policy.html |
| Apple | App distribution; crash reports when you agree | Crash reports (collected by Apple and provided to us) | Provided by Apple | Determined by Apple | https://www.apple.com/legal/privacy/ |