Proceso de solicitud
Para utilizar la API, primero debe ir a la página correspondiente de la API de generación de audios de Fish para solicitar el servicio correspondiente. Una vez en la página, haga clic en el botón “Acquire”, como se muestra en la imagen:
Si aún no ha iniciado sesión o registrado, será redirigido automáticamente a la página de inicio de sesión, invitándolo a registrarse e iniciar sesión. Después de registrarse e iniciar sesión, será redirigido automáticamente a la página actual.
En la primera solicitud, se le otorgará un crédito gratuito, lo que le permitirá utilizar la API de forma gratuita.
Uso básico
Primero, debe comprender la forma básica de uso, que consiste en ingresar la palabra claveprompt, la acción de clonación action, el ID de voz voice_id y el modelo model, para obtener el resultado procesado. Primero, necesita pasar un campo action, cuyo valor será generate, luego también necesitamos ingresar el modelo model, que actualmente es principalmente el modelo fish-tts, el contenido específico es el siguiente:

accept: el formato de respuesta que desea recibir, aquí se llena comoapplication/json, es decir, formato JSON.authorization: la clave para llamar a la API, que puede seleccionarse directamente después de la solicitud.
model: el modelo para clonar la voz, principalmente el modelofish-tts.action: la acción de la tarea de clonación de voz.prompt: la palabra clave que necesita ser clonada.voice_id: el ID de voz para realizar la clonación.callback_url: la URL donde se necesita recibir el resultado.

success, el estado de la tarea de clonación de voz en este momento.data, el resultado de la tarea de clonación de vozaudio_url, el enlace de audio del resultado de la tarea de clonación de voz.
data.
Además, si desea generar el código de integración correspondiente, puede copiarlo directamente, por ejemplo, el código de CURL es el siguiente:
Callback asíncrono
Dado que el tiempo de generación de la API de generación de audios de Fish es relativamente largo, aproximadamente de 1 a 2 minutos, si la API no responde durante mucho tiempo, la solicitud HTTP mantendrá la conexión, lo que provocará un consumo adicional de recursos del sistema. Por lo tanto, esta API también ofrece soporte para callbacks asíncronos. El proceso general es: cuando el cliente inicia la solicitud, debe especificar un campo adicionalcallback_url. Después de que el cliente inicia la solicitud a la API, la API devolverá inmediatamente un resultado que incluye un campo task_id, que representa el ID de la tarea actual. Cuando la tarea se complete, el resultado de la tarea generada se enviará al callback_url especificado por el cliente en formato JSON POST, que también incluirá el campo task_id, de modo que el resultado de la tarea se pueda asociar mediante el ID.
A continuación, entenderemos cómo operar a través de un ejemplo.
Primero, el callback de Webhook es un servicio que puede recibir solicitudes HTTP, y el desarrollador debe reemplazarlo con la URL de su propio servidor HTTP. Para facilitar la demostración, utilizamos un sitio web de muestra de Webhook público https://webhook.site/, al abrir este sitio obtendrá una URL de Webhook, como se muestra en la imagen:
Copie esta URL y podrá usarla como Webhook, el ejemplo aquí es https://webhook.site/4815f79f-a40f-4078-ac85-1cc126b6bb34.
A continuación, podemos establecer el campo callback_url como la URL de Webhook anterior, al mismo tiempo que ingresamos los parámetros correspondientes, el contenido específico es como se muestra en la imagen:

https://webhook.site/4815f79f-a40f-4078-ac85-1cc126b6bb34, como se muestra en la imagen:
El contenido es el siguiente:
task_id, y los otros campos son similares a los mencionados anteriormente, a través de este campo se puede lograr la asociación de tareas.
Manejo de errores
Al llamar a la API, si se encuentra con un error, la API devolverá el código de error y la información correspondiente. Por ejemplo:400 token_mismatched: Solicitud incorrecta, posiblemente debido a parámetros faltantes o inválidos.400 api_not_implemented: Solicitud incorrecta, posiblemente debido a parámetros faltantes o inválidos.401 invalid_token: No autorizado, token de autorización inválido o faltante.429 too_many_requests: Demasiadas solicitudes, ha superado el límite de tasa.500 api_error: Error interno del servidor, algo salió mal en el servidor.

