Edits history of script submission #11418 for ' Get a form submission from Nextcloud Forms (nextcloud)'

  • bun
    One script reply has been approved by the moderators
    Ap­pro­ved
    import createClient, { type Middleware } from "openapi-fetch";
    
    export async function main(
      nextcloud: RT.Nextcloud,
      formId: string,
      submissionId: number,
    ) {
    
      const client = createClient<paths>({ baseUrl: nextcloud.baseUrl });
      const authMiddleware: Middleware = {
        async onRequest({ request, options }) {
          // fetch token, if it doesn’t exist
          // add Authorization header to every request
          request.headers.set("Authorization", `Basic ${btoa((nextcloud.userId) + ':' + nextcloud.token)}`);
          return request;
        },
      };
      client.use(authMiddleware);
    
      try {
        const resp = await client.GET("/ocs/v2.php/apps/forms/api/v3/forms/{formId}/submissions", {
          params: {
            header: {
              "OCS-APIRequest": true,
            },
            query: {
              format: "json",
            },
            path: {
              formId: formId,
            },
    
          },
        });
        
        const submission = resp.data.ocs.data.submissions.find(s => s.id === submissionId)
        
        return {
          submission,
        }
      } catch(e) {
        console.debug('error', e)
      }
    
    }

    Submitted by nextcloud 91 days ago

  • bun
    import * as wmill from "windmill-client";
    import createClient, { type Middleware } from "openapi-fetch";
    
    type Nextcloud = {
      baseUrl: string,
      password: string,
      username: string
    };
    
    export async function main(
      ncResource: Nextcloud,
      userId: string | null = null,
      formId: string,
      submissionId: number,
      useAppApiAuth: boolean = false,
    ) {
    
      const client = createClient<paths>({ baseUrl: ncResource.baseUrl });
      const authMiddleware: Middleware = {
        async onRequest({ request, options }) {
          // fetch token, if it doesn’t exist
          // add Authorization header to every request
          request.headers.set("Authorization", `Basic ${btoa((ncResource.username) + ':' + ncResource.password)}`);
          if (useAppApiAuth) {
            request.headers.set("AA-VERSION", ncResource.aa_version,);
            request.headers.set("EX-APP-ID", ncResource.app_id,);
            request.headers.set("EX-APP-VERSION", ncResource.app_version,);
            request.headers.set("AUTHORIZATION-APP-API", btoa(
              `${userId || ncResource.username}:${ncResource.password}`,
            ));
          }
          return request;
        },
      };
      client.use(authMiddleware);
    
      try {
        const resp = await client.GET("/ocs/v2.php/apps/forms/api/v3/forms/{formId}/submissions", {
          params: {
            header: {
              "OCS-APIRequest": true,
            },
            query: {
              format: "json",
            },
            path: {
              formId: formId,
            },
    
          },
        });
        
        const submission = resp.data.ocs.data.submissions.find(s => s.id === submissionId)
        
        return {
          submission,
        }
      } catch(e) {
        console.debug('error', e)
      }
    
    }

    Submitted by nextcloud 480 days ago

  • bun
    import * as wmill from "windmill-client";
    import createClient, { type Middleware } from "openapi-fetch";
    
    type Nextcloud = {
      baseUrl: string,
      password: string,
      username: string
    };
    
    export async function main(
      ncResource: Nextcloud,
      userId: string | null = null,
      formId: string,
      submissionId: number,
      useAppApiAuth: boolean = false,
    ) {
    
      const client = createClient<paths>({ baseUrl: ncResource.baseUrl });
      const authMiddleware: Middleware = {
        async onRequest({ request, options }) {
          // fetch token, if it doesn’t exist
          // add Authorization header to every request
          request.headers.set("Authorization", `Basic ${btoa((userId || ncResource.username) + ':' + ncResource.password)}`);
          if (useAppApiAuth) {
            request.headers.set("AA-VERSION", "2.3.0",);
            request.headers.set("EX-APP-ID", "flow",);
            request.headers.set("EX-APP-VERSION", "1.0.1",);
            request.headers.set("AUTHORIZATION-APP-API", btoa(
              `${userId || ncResource.username}:${ncResource.password}`,
            ));
          }
          return request;
        },
      };
      client.use(authMiddleware);
    
      try {
        const resp = await client.GET("/ocs/v2.php/apps/forms/api/v3/forms/{formId}/submissions", {
          params: {
            header: {
              "OCS-APIRequest": true,
            },
            query: {
              format: "json",
            },
            path: {
              formId: formId,
            },
    
          },
        });
    
        const submission = resp.data.ocs.data.submissions.find(s => s.id === submissionId)
        //console.debug('SUBMISSION', submission)
        return {
          submission,
        }
      } catch(e) {
        console.debug('error', e)
      }
    
    }

    Submitted by nextcloud 490 days ago

  • bun
    import * as wmill from "windmill-client";
    import createClient, { type Middleware } from "openapi-fetch";
    
    type Nextcloud = {
      baseUrl: string,
      password: string,
      username: string
    };
    
    export async function main(
      ncResource: Nextcloud,
      userId: string | null = null,
      formId: string,
      submissionId: number,
      useAppApiAuth: boolean = false,
    ) {
    
      const client = createClient<paths>({ baseUrl: ncResource.baseUrl });
      const authMiddleware: Middleware = {
        async onRequest({ request, options }) {
          // fetch token, if it doesn’t exist
          // add Authorization header to every request
          request.headers.set("Authorization", `Basic ${btoa((userId || ncResource.username) + ':' + ncResource.password)}`);
          if (useAppApiAuth) {
            request.headers.set("AA-VERSION", "2.3.0",);
            request.headers.set("EX-APP-ID", "flow",);
            request.headers.set("EX-APP-VERSION", "1.0.1",);
            request.headers.set("AUTHORIZATION-APP-API", btoa(
              `${userId || ncResource.username}:${ncResource.password}`,
            ));
          }
          return request;
        },
      };
      client.use(authMiddleware);
    
      try {
        const resp = await client.GET("/ocs/v2.php/apps/forms/api/v3/forms/{formId}/submissions", {
          params: {
            header: {
              "OCS-APIRequest": true,
            },
            query: {
              format: "json",
            },
            path: {
              formId: formId,
            },
    
          },
        });
    
        const submission = resp.data.ocs.data.submissions.find(s => s.id === submissionId)
        //console.debug('SUBMISSION', submission)
        return {
          submission,
        }
      } catch(e) {
        console.debug('error', e)
      }
    
    }

    Submitted by nextcloud 490 days ago

  • bun
    import * as wmill from "windmill-client";
    import createClient, { type Middleware } from "openapi-fetch";
    
    export async function main(
      ncResource: Nextcloud,
      userId: string | null = null,
      formId: string,
      submissionId: number,
      useAppApiAuth: boolean = false,
    ) {
    
      const client = createClient<paths>({ baseUrl: ncResource.baseUrl });
      const authMiddleware: Middleware = {
        async onRequest({ request, options }) {
          // fetch token, if it doesn’t exist
          // add Authorization header to every request
          request.headers.set("Authorization", `Basic ${btoa((userId || ncResource.username) + ':' + ncResource.password)}`);
          if (useAppApiAuth) {
            request.headers.set("AA-VERSION", "2.3.0",);
            request.headers.set("EX-APP-ID", "flow",);
            request.headers.set("EX-APP-VERSION", "1.0.1",);
            request.headers.set("AUTHORIZATION-APP-API", btoa(
              `${userId || ncResource.username}:${ncResource.password}`,
            ));
          }
          return request;
        },
      };
      client.use(authMiddleware);
    
      try {
        const resp = await client.GET("/ocs/v2.php/apps/forms/api/v3/forms/{formId}/submissions", {
          params: {
            header: {
              "OCS-APIRequest": true,
            },
            query: {
              format: "json",
            },
            path: {
              formId: formId,
            },
    
          },
        });
    
        const submission = resp.data.ocs.data.submissions.find(s => s.id === submissionId)
        //console.debug('SUBMISSION', submission)
        return {
          submission,
        }
      } catch(e) {
        console.debug('error', e)
      }
    
    }

    Submitted by nextcloud 491 days ago

  • bun
    import * as wmill from "windmill-client";
    import createClient, { type Middleware } from "openapi-fetch";
    
    export async function main(
      nextcloudResource: string,
      userId: string | null = null,
      formId: string,
      submissionId: number,
      useAppApiAuth: boolean = false,
    ) {
      const ncResource = await wmill.getResource(
        nextcloudResource,
      );
    
      const client = createClient<paths>({ baseUrl: ncResource.baseUrl });
      const authMiddleware: Middleware = {
        async onRequest({ request, options }) {
          // fetch token, if it doesn’t exist
          // add Authorization header to every request
          request.headers.set("Authorization", `Basic ${btoa((userId || ncResource.username) + ':' + ncResource.password)}`);
          if (useAppApiAuth) {
            request.headers.set("AA-VERSION", "2.3.0",);
            request.headers.set("EX-APP-ID", "flow",);
            request.headers.set("EX-APP-VERSION", "1.0.1",);
            request.headers.set("AUTHORIZATION-APP-API", btoa(
              `${userId || ncResource.username}:${ncResource.password}`,
            ));
          }
          return request;
        },
      };
      client.use(authMiddleware);
    
      try {
        const resp = await client.GET("/ocs/v2.php/apps/forms/api/v3/forms/{formId}/submissions", {
          params: {
            header: {
              "OCS-APIRequest": true,
            },
            query: {
              format: "json",
            },
            path: {
              formId: formId,
            },
    
          },
        });
    
        const submission = resp.data.ocs.data.submissions.find(s => s.id === submissionId)
        //console.debug('SUBMISSION', submission)
        return {
          submission,
        }
      } catch(e) {
        console.debug('error', e)
      }
    
    }

    Submitted by nextcloud 495 days ago