File size: 2,597 Bytes
bb11990
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
import React from 'react';
import Swagger from '../components/Swagger';
import spec from './swagger-suno-api.json'; // 直接导入JSON文件
import Section from '../components/Section';
import Markdown from 'react-markdown';


export default function Docs() {
    return (
        <>

            <Section className="my-10">

                <article className="prose lg:prose-lg max-w-3xl pt-10">

                    <h1 className=' text-center text-indigo-900'>

                        API Docs

                    </h1>

                    <Markdown>

                        {`                     

---

\`gcui-art/suno-api\` currently mainly implements the following APIs:



\`\`\`bash

- \`/api/generate\`: Generate music

- \`/v1/chat/completions\`: Generate music - Call the generate API in a format 

  that works with OpenAI’s API.

- \`/api/custom_generate\`: Generate music (Custom Mode, support setting lyrics, 

  music style, title, etc.)

- \`/api/generate_lyrics\`: Generate lyrics based on prompt

- \`/api/get\`: Get music information based on the id. Use “,” to separate multiple 

    ids.  If no IDs are provided, all music will be returned.

- \`/api/get_limit\`: Get quota Info

- \`/api/extend_audio\`: Extend audio length

- \`/api/generate_stems\`: Make stem tracks (separate audio and music track)

- \`/api/get_aligned_lyrics\`: Get list of timestamps for each word in the lyrics

- \`/api/clip\`:  Get clip information based on ID passed as query parameter \`id\`

- \`/api/concat\`: Generate the whole song from extensions

- \`/api/persona\`: Get persona information and clips based on ID and page number

\`\`\`



Feel free to explore the detailed API parameters and conduct tests on this page.

                        `}

                    </Markdown>

                </article>

            </Section>

            <Section className="my-10">

                <article className='prose lg:prose-lg max-w-3xl py-10'>

                    <h2 className='text-center'>

                        Details of the API and testing it online

                    </h2>

                    <p className='text-red-800 italic'>

                        This is just a demo, bound to a test account. Please do not use it frequently, so that more people can test online.

                    </p>

                </article>



                <div className=' border p-4 rounded-2xl shadow-xl hover:shadow-none duration-200'>

                    <Swagger spec={spec} />

                </div>



            </Section>

        </>

    );
}