@cfxlabsinc/b2b-services
    Preparing search index...
    redemptionTransferApi: {
        "/v1/redemption/transfer": {
            get: {
                description: "Results is ordered by `createdAt` in descending order, if no `orderBy` is specified.";
                querystring: TObject<
                    {
                        createdAfter: TOptional<TString>;
                        createdBefore: TOptional<TString>;
                        identityIds: TOptional<TString>;
                        orderBy: TOptional<TString>;
                        organizationIds: TOptional<TString>;
                        page: TOptional<TInteger>;
                        pageSize: TOptional<TInteger>;
                        sourceWalletIds: TOptional<TString>;
                        statuses: TOptional<TString>;
                        targetWalletIds: TOptional<TString>;
                        updatedAfter: TOptional<TString>;
                        updatedBefore: TOptional<TString>;
                    },
                >;
                response: {
                    "200": TObject<
                        {
                            items: TArray<
                                TIntersect<
                                    [
                                        TObject<
                                            {
                                                createdAt: ...;
                                                fees: ...;
                                                id: ...;
                                                receipt: ...;
                                                senderMessage: ...;
                                                source: ...;
                                                sourceAmount: ...;
                                                status: ...;
                                                target: ...;
                                                targetAmount: ...;
                                                totalFees: ...;
                                                updatedAt: ...;
                                            },
                                        >,
                                        TUnion<[(...), (...)]>,
                                    ],
                                >,
                            >;
                        },
                    >;
                };
                summary: "Search existing transfers";
                tags: readonly ["Redemption"];
            };
            post: {
                body: TIntersect<
                    [
                        TObject<
                            {
                                senderMessage: TOptional<TString>;
                                source: TObject<{ id: TString; type: TUnsafe<(...) | (...)> }>;
                                sourceAmount: TObject<
                                    { amount: TString; currency: TLiteral<"MOVEUSD"> },
                                >;
                                target: TObject<{ id: TString; type: TUnsafe<(...) | (...)> }>;
                            },
                        >,
                        TUnion<
                            [
                                TObject<{ identityId: TString }>,
                                TObject<{ organizationId: TString }>,
                            ],
                        >,
                    ],
                >;
                description: "You can supply either Redemption wallet IDs (`redwal_xxxxxxx`) or Payment Instrument IDs (`pi_xxxxxx`) when specifying `source` and `target` values.";
                response: {
                    "202": TObject<
                        {
                            createdAt: TString;
                            fees: TArray<
                                TObject<
                                    {
                                        amount: TObject<{ amount: ...; currency: ... }>;
                                        receiver: TUnsafe<(...) | (...) | (...)>;
                                        type: TUnsafe<(...) | (...)>;
                                    },
                                >,
                            >;
                            id: TString;
                            receipt: TOptional<
                                TObject<
                                    { id: TString; type: TLiteral<"SOLANA_TRANSACTION_SIGNATURE"> },
                                >,
                            >;
                            senderMessage: TOptional<TString>;
                            source: TObject<
                                {
                                    id: TString;
                                    type: TUnsafe<"REDEMPTION" | "PAYMENT_INSTRUMENT">;
                                },
                            >;
                            sourceAmount: TObject<
                                { amount: TString; currency: TLiteral<"MOVEUSD"> },
                            >;
                            status: TUnsafe<"PENDING" | "SUCCEEDED" | "FAILED" | "CANCELLED">;
                            target: TObject<
                                {
                                    id: TString;
                                    type: TUnsafe<"REDEMPTION" | "PAYMENT_INSTRUMENT">;
                                },
                            >;
                            targetAmount: TObject<
                                { amount: TString; currency: TLiteral<"MOVEUSD"> },
                            >;
                            totalFees: TObject<{ amount: TString; currency: TLiteral<"MOVEUSD"> }>;
                            updatedAt: TString;
                        },
                    >;
                    "400": TUnion<
                        [
                            TIntersect<
                                [
                                    TObject<{ code: TLiteral<(...)>; message: TString }>,
                                    TObject<{ id: TString }>,
                                ],
                            >,
                            TIntersect<
                                [
                                    TObject<{ code: TLiteral<(...)>; message: TString }>,
                                    TObject<{ id: TString }>,
                                ],
                            >,
                            TObject<
                                {
                                    code: TLiteral<"INVALID_IDENTITY_OR_ORGANIZATION">;
                                    message: TString;
                                },
                            >,
                            TObject<{ code: TLiteral<"INVALID_TRANSFER">; message: TString }>,
                            TIntersect<
                                [
                                    TObject<{ code: TLiteral<(...)>; message: TString }>,
                                    TObject<
                                        { sourceAmount: TObject<(...)>; sourceBalance: TObject<(...)> },
                                    >,
                                ],
                            >,
                        ],
                    >;
                    "429": TObject<{ code: TLiteral<"LIMIT_EXCEEDED">; message: TString }>;
                };
                summary: "Transfer between redemption wallets";
                tags: readonly ["Redemption"];
            };
        };
        "/v1/redemption/transfer/{id}": {
            get: {
                params: TObject<{ id: TString }>;
                response: {
                    "200": TObject<
                        {
                            createdAt: TString;
                            fees: TArray<
                                TObject<
                                    {
                                        amount: TObject<{ amount: ...; currency: ... }>;
                                        receiver: TUnsafe<(...) | (...) | (...)>;
                                        type: TUnsafe<(...) | (...)>;
                                    },
                                >,
                            >;
                            id: TString;
                            receipt: TOptional<
                                TObject<
                                    { id: TString; type: TLiteral<"SOLANA_TRANSACTION_SIGNATURE"> },
                                >,
                            >;
                            senderMessage: TOptional<TString>;
                            source: TObject<
                                {
                                    id: TString;
                                    type: TUnsafe<"REDEMPTION" | "PAYMENT_INSTRUMENT">;
                                },
                            >;
                            sourceAmount: TObject<
                                { amount: TString; currency: TLiteral<"MOVEUSD"> },
                            >;
                            status: TUnsafe<"PENDING" | "SUCCEEDED" | "FAILED" | "CANCELLED">;
                            target: TObject<
                                {
                                    id: TString;
                                    type: TUnsafe<"REDEMPTION" | "PAYMENT_INSTRUMENT">;
                                },
                            >;
                            targetAmount: TObject<
                                { amount: TString; currency: TLiteral<"MOVEUSD"> },
                            >;
                            totalFees: TObject<{ amount: TString; currency: TLiteral<"MOVEUSD"> }>;
                            updatedAt: TString;
                        },
                    >;
                    "404": TObject<{ code: TLiteral<"NOT_FOUND">; message: TString }>;
                };
                summary: "Get an existing transfer by ID";
                tags: readonly ["Redemption"];
            };
        };
    } = ...

    Type Declaration

    • Readonly/v1/redemption/transfer: {
          get: {
              description: "Results is ordered by `createdAt` in descending order, if no `orderBy` is specified.";
              querystring: TObject<
                  {
                      createdAfter: TOptional<TString>;
                      createdBefore: TOptional<TString>;
                      identityIds: TOptional<TString>;
                      orderBy: TOptional<TString>;
                      organizationIds: TOptional<TString>;
                      page: TOptional<TInteger>;
                      pageSize: TOptional<TInteger>;
                      sourceWalletIds: TOptional<TString>;
                      statuses: TOptional<TString>;
                      targetWalletIds: TOptional<TString>;
                      updatedAfter: TOptional<TString>;
                      updatedBefore: TOptional<TString>;
                  },
              >;
              response: {
                  "200": TObject<
                      {
                          items: TArray<
                              TIntersect<
                                  [
                                      TObject<
                                          {
                                              createdAt: ...;
                                              fees: ...;
                                              id: ...;
                                              receipt: ...;
                                              senderMessage: ...;
                                              source: ...;
                                              sourceAmount: ...;
                                              status: ...;
                                              target: ...;
                                              targetAmount: ...;
                                              totalFees: ...;
                                              updatedAt: ...;
                                          },
                                      >,
                                      TUnion<[(...), (...)]>,
                                  ],
                              >,
                          >;
                      },
                  >;
              };
              summary: "Search existing transfers";
              tags: readonly ["Redemption"];
          };
          post: {
              body: TIntersect<
                  [
                      TObject<
                          {
                              senderMessage: TOptional<TString>;
                              source: TObject<{ id: TString; type: TUnsafe<(...) | (...)> }>;
                              sourceAmount: TObject<
                                  { amount: TString; currency: TLiteral<"MOVEUSD"> },
                              >;
                              target: TObject<{ id: TString; type: TUnsafe<(...) | (...)> }>;
                          },
                      >,
                      TUnion<
                          [
                              TObject<{ identityId: TString }>,
                              TObject<{ organizationId: TString }>,
                          ],
                      >,
                  ],
              >;
              description: "You can supply either Redemption wallet IDs (`redwal_xxxxxxx`) or Payment Instrument IDs (`pi_xxxxxx`) when specifying `source` and `target` values.";
              response: {
                  "202": TObject<
                      {
                          createdAt: TString;
                          fees: TArray<
                              TObject<
                                  {
                                      amount: TObject<{ amount: ...; currency: ... }>;
                                      receiver: TUnsafe<(...) | (...) | (...)>;
                                      type: TUnsafe<(...) | (...)>;
                                  },
                              >,
                          >;
                          id: TString;
                          receipt: TOptional<
                              TObject<
                                  { id: TString; type: TLiteral<"SOLANA_TRANSACTION_SIGNATURE"> },
                              >,
                          >;
                          senderMessage: TOptional<TString>;
                          source: TObject<
                              { id: TString; type: TUnsafe<"REDEMPTION" | "PAYMENT_INSTRUMENT"> },
                          >;
                          sourceAmount: TObject<
                              { amount: TString; currency: TLiteral<"MOVEUSD"> },
                          >;
                          status: TUnsafe<"PENDING" | "SUCCEEDED" | "FAILED" | "CANCELLED">;
                          target: TObject<
                              { id: TString; type: TUnsafe<"REDEMPTION" | "PAYMENT_INSTRUMENT"> },
                          >;
                          targetAmount: TObject<
                              { amount: TString; currency: TLiteral<"MOVEUSD"> },
                          >;
                          totalFees: TObject<{ amount: TString; currency: TLiteral<"MOVEUSD"> }>;
                          updatedAt: TString;
                      },
                  >;
                  "400": TUnion<
                      [
                          TIntersect<
                              [
                                  TObject<{ code: TLiteral<(...)>; message: TString }>,
                                  TObject<{ id: TString }>,
                              ],
                          >,
                          TIntersect<
                              [
                                  TObject<{ code: TLiteral<(...)>; message: TString }>,
                                  TObject<{ id: TString }>,
                              ],
                          >,
                          TObject<
                              {
                                  code: TLiteral<"INVALID_IDENTITY_OR_ORGANIZATION">;
                                  message: TString;
                              },
                          >,
                          TObject<{ code: TLiteral<"INVALID_TRANSFER">; message: TString }>,
                          TIntersect<
                              [
                                  TObject<{ code: TLiteral<(...)>; message: TString }>,
                                  TObject<
                                      { sourceAmount: TObject<(...)>; sourceBalance: TObject<(...)> },
                                  >,
                              ],
                          >,
                      ],
                  >;
                  "429": TObject<{ code: TLiteral<"LIMIT_EXCEEDED">; message: TString }>;
              };
              summary: "Transfer between redemption wallets";
              tags: readonly ["Redemption"];
          };
      }
    • Readonly/v1/redemption/transfer/{id}: {
          get: {
              params: TObject<{ id: TString }>;
              response: {
                  "200": TObject<
                      {
                          createdAt: TString;
                          fees: TArray<
                              TObject<
                                  {
                                      amount: TObject<{ amount: ...; currency: ... }>;
                                      receiver: TUnsafe<(...) | (...) | (...)>;
                                      type: TUnsafe<(...) | (...)>;
                                  },
                              >,
                          >;
                          id: TString;
                          receipt: TOptional<
                              TObject<
                                  { id: TString; type: TLiteral<"SOLANA_TRANSACTION_SIGNATURE"> },
                              >,
                          >;
                          senderMessage: TOptional<TString>;
                          source: TObject<
                              { id: TString; type: TUnsafe<"REDEMPTION" | "PAYMENT_INSTRUMENT"> },
                          >;
                          sourceAmount: TObject<
                              { amount: TString; currency: TLiteral<"MOVEUSD"> },
                          >;
                          status: TUnsafe<"PENDING" | "SUCCEEDED" | "FAILED" | "CANCELLED">;
                          target: TObject<
                              { id: TString; type: TUnsafe<"REDEMPTION" | "PAYMENT_INSTRUMENT"> },
                          >;
                          targetAmount: TObject<
                              { amount: TString; currency: TLiteral<"MOVEUSD"> },
                          >;
                          totalFees: TObject<{ amount: TString; currency: TLiteral<"MOVEUSD"> }>;
                          updatedAt: TString;
                      },
                  >;
                  "404": TObject<{ code: TLiteral<"NOT_FOUND">; message: TString }>;
              };
              summary: "Get an existing transfer by ID";
              tags: readonly ["Redemption"];
          };
      }