|
574 | 574 | } |
575 | 575 | } |
576 | 576 | }, |
577 | | - "/api/artists/{id}": { |
578 | | - "get": { |
579 | | - "description": "Retrieve a single artist detail payload by artist account ID. Returns the merged artist profile used by the chat product, including profile fields and linked social accounts. Requires authentication via x-api-key or Authorization Bearer token, and the caller must be allowed to access the requested artist account.", |
580 | | - "parameters": [ |
581 | | - { |
582 | | - "name": "id", |
583 | | - "in": "path", |
584 | | - "description": "The unique identifier of the artist account to retrieve", |
585 | | - "required": true, |
586 | | - "schema": { |
587 | | - "type": "string", |
588 | | - "format": "uuid" |
589 | | - } |
590 | | - } |
591 | | - ], |
592 | | - "responses": { |
593 | | - "200": { |
594 | | - "description": "Artist retrieved successfully", |
595 | | - "content": { |
596 | | - "application/json": { |
597 | | - "schema": { |
598 | | - "$ref": "#/components/schemas/GetArtistResponse" |
599 | | - } |
600 | | - } |
601 | | - } |
602 | | - }, |
603 | | - "400": { |
604 | | - "description": "Bad request - invalid artist id", |
605 | | - "content": { |
606 | | - "application/json": { |
607 | | - "schema": { |
608 | | - "$ref": "#/components/schemas/ArtistsErrorResponse" |
609 | | - } |
610 | | - } |
611 | | - } |
612 | | - }, |
613 | | - "401": { |
614 | | - "description": "Unauthorized - missing or invalid authentication" |
615 | | - }, |
616 | | - "403": { |
617 | | - "description": "Forbidden - the requested artist is not accessible with the provided credentials" |
618 | | - }, |
619 | | - "404": { |
620 | | - "description": "Artist not found", |
621 | | - "content": { |
622 | | - "application/json": { |
623 | | - "schema": { |
624 | | - "$ref": "#/components/schemas/StatusErrorResponse" |
625 | | - } |
626 | | - } |
627 | | - } |
628 | | - } |
629 | | - } |
630 | | - } |
631 | | - }, |
632 | 577 | "/api/artist/segments": { |
633 | 578 | "get": { |
634 | 579 | "description": "Retrieve all segments associated with an artist. This endpoint should be called before using the Segment Fans endpoint to obtain the necessary segment IDs. Supports pagination.", |
|
8504 | 8449 | } |
8505 | 8450 | } |
8506 | 8451 | }, |
8507 | | - "GetArtistResponse": { |
8508 | | - "type": "object", |
8509 | | - "required": [ |
8510 | | - "artist" |
8511 | | - ], |
8512 | | - "properties": { |
8513 | | - "artist": { |
8514 | | - "$ref": "#/components/schemas/ArtistDetail" |
8515 | | - } |
8516 | | - } |
8517 | | - }, |
8518 | 8452 | "ArtistsErrorResponse": { |
8519 | 8453 | "type": "object", |
8520 | 8454 | "required": [ |
8521 | 8455 | "status", |
8522 | | - "error" |
| 8456 | + "message" |
8523 | 8457 | ], |
8524 | 8458 | "properties": { |
8525 | 8459 | "status": { |
|
8529 | 8463 | ], |
8530 | 8464 | "description": "Status of the request" |
8531 | 8465 | }, |
8532 | | - "missing_fields": { |
8533 | | - "type": "array", |
8534 | | - "items": { |
8535 | | - "type": "string" |
8536 | | - }, |
8537 | | - "description": "List of missing or invalid field names when validation fails" |
8538 | | - }, |
8539 | | - "error": { |
| 8466 | + "message": { |
8540 | 8467 | "type": "string", |
8541 | 8468 | "description": "Error message describing what went wrong" |
8542 | 8469 | } |
|
8667 | 8594 | } |
8668 | 8595 | } |
8669 | 8596 | }, |
8670 | | - "ArtistDetail": { |
8671 | | - "type": "object", |
8672 | | - "required": [ |
8673 | | - "id", |
8674 | | - "account_id", |
8675 | | - "name", |
8676 | | - "account_socials" |
8677 | | - ], |
8678 | | - "properties": { |
8679 | | - "id": { |
8680 | | - "type": "string", |
8681 | | - "format": "uuid", |
8682 | | - "description": "UUID of the artist account" |
8683 | | - }, |
8684 | | - "account_id": { |
8685 | | - "type": "string", |
8686 | | - "format": "uuid", |
8687 | | - "description": "UUID of the artist account (same as id)" |
8688 | | - }, |
8689 | | - "name": { |
8690 | | - "type": "string", |
8691 | | - "description": "Name of the artist" |
8692 | | - }, |
8693 | | - "image": { |
8694 | | - "type": "string", |
8695 | | - "nullable": true, |
8696 | | - "description": "Artist profile image URL" |
8697 | | - }, |
8698 | | - "instruction": { |
8699 | | - "type": "string", |
8700 | | - "nullable": true, |
8701 | | - "description": "Custom AI instruction or bio for this artist" |
8702 | | - }, |
8703 | | - "knowledges": { |
8704 | | - "type": "array", |
8705 | | - "nullable": true, |
8706 | | - "items": { |
8707 | | - "$ref": "#/components/schemas/Knowledge" |
8708 | | - }, |
8709 | | - "description": "Knowledge base files attached to this artist" |
8710 | | - }, |
8711 | | - "label": { |
8712 | | - "type": "string", |
8713 | | - "nullable": true, |
8714 | | - "description": "Record label name" |
8715 | | - }, |
8716 | | - "account_socials": { |
8717 | | - "type": "array", |
8718 | | - "items": { |
8719 | | - "$ref": "#/components/schemas/ArtistAccountSocial" |
8720 | | - }, |
8721 | | - "description": "Linked social accounts formatted for artist settings and chat flows" |
8722 | | - } |
8723 | | - } |
8724 | | - }, |
8725 | | - "ArtistAccountSocial": { |
8726 | | - "type": "object", |
8727 | | - "properties": { |
8728 | | - "id": { |
8729 | | - "type": "string", |
8730 | | - "format": "uuid", |
8731 | | - "nullable": true, |
8732 | | - "description": "UUID of the linked social profile" |
8733 | | - }, |
8734 | | - "profile_url": { |
8735 | | - "type": "string", |
8736 | | - "nullable": true, |
8737 | | - "description": "Canonical social profile URL" |
8738 | | - }, |
8739 | | - "username": { |
8740 | | - "type": "string", |
8741 | | - "nullable": true, |
8742 | | - "description": "Username or handle for the social profile" |
8743 | | - }, |
8744 | | - "link": { |
8745 | | - "type": "string", |
8746 | | - "description": "Normalized profile URL used by the chat client" |
8747 | | - }, |
8748 | | - "type": { |
8749 | | - "type": "string", |
8750 | | - "description": "Derived platform type such as INSTAGRAM, TIKTOK, or SPOTIFY" |
8751 | | - } |
8752 | | - } |
8753 | | - }, |
8754 | 8597 | "CreateArtistError": { |
8755 | 8598 | "type": "object", |
8756 | 8599 | "properties": { |
|
0 commit comments